Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk menanyakan tatasusunan dalam php dan mendapatkan pasangan nilai kunci

Bagaimana untuk menanyakan tatasusunan dalam php dan mendapatkan pasangan nilai kunci

Apr 19, 2023 am 10:05 AM

Dalam PHP, tatasusunan ialah jenis data yang sangat biasa yang boleh menyimpan berbilang elemen dan mengatur serta mengakses elemen ini dengan cara tertentu. Antaranya, kunci dan nilai ialah dua komponen penting tatasusunan Kunci digunakan untuk mengenal pasti secara unik setiap elemen dalam tatasusunan, dan nilainya ialah data yang dikaitkan dengan kunci. Dalam pembangunan sebenar, kita selalunya perlu menanyakan pasangan nilai kunci tertentu dalam tatasusunan dan mendapatkan semua pasangan nilai kunci dalam tatasusunan Artikel ini akan memperkenalkan secara terperinci cara melaksanakan operasi ini.

1. Tanya pasangan nilai kunci dalam tatasusunan

  1. Gunakan fungsi isset() untuk menentukan sama ada kunci itu wujud

Dalam PHP, kita boleh Gunakan fungsi isset() untuk menentukan sama ada kunci dalam tatasusunan wujud. Mengembalikan benar jika kunci wujud, palsu sebaliknya. Kod sampel adalah seperti berikut:

$fruits = array(
    "apple" => "red",
    "banana" => "yellow",
    "orange" => "orange"
);

if (isset($fruits["apple"])) {
    echo "apple exists\n";
} else {
    echo "apple does not exist\n";
}
Salin selepas log masuk

Kod di atas mentakrifkan tatasusunan bersekutu $buah-buahan, yang mengandungi tiga elemen, iaitu epal, pisang dan oren. Seterusnya, gunakan fungsi isset() untuk menentukan sama ada terdapat elemen dengan kunci "epal" dalam tatasusunan $fruits. Jika ia wujud, keluaran "epal wujud", jika tidak, keluaran "epal tidak wujud".

  1. Gunakan fungsi array_key_exists() untuk menentukan sama ada kunci wujud

Selain menggunakan fungsi isset(), kita juga boleh menggunakan fungsi array_key_exists() untuk tentukan sama ada kunci wujud dalam tatasusunan Sama ada kunci itu wujud. Perbezaan antara fungsi array_key_exists() dan fungsi isset() ialah fungsi yang pertama hanya menentukan sama ada kunci itu wujud, manakala yang kedua juga menentukan sama ada nilai yang sepadan dengan kunci itu adalah nol. Kod sampel adalah seperti berikut:

$fruits = array(
    "apple" => "red",
    "banana" => "yellow",
    "orange" => "orange"
);

if (array_key_exists("apple", $fruits)) {
    echo "apple exists\n";
} else {
    echo "apple does not exist\n";
}
Salin selepas log masuk

Kod di atas adalah serupa dengan kaedah pertama, kecuali ia menggunakan fungsi array_key_exists() untuk menentukan sama ada terdapat elemen dengan kunci "epal" dalam tatasusunan.

  1. Gunakan fungsi in_array() untuk menentukan sama ada nilai wujud

Kadangkala, kita tidak mengambil berat sama ada kunci itu wujud, tetapi ingin menentukan sama ada nilai tertentu wujud dalam tatasusunan. Pada masa ini, anda boleh menggunakan fungsi in_array() untuk membuat pertimbangan. Kod sampel adalah seperti berikut:

$fruits = array("apple", "banana", "orange");

if (in_array("apple", $fruits)) {
    echo "apple exists\n";
} else {
    echo "apple does not exist\n";
}
Salin selepas log masuk

Kod di atas mentakrifkan tatasusunan biasa $fruits, yang mengandungi tiga elemen. Gunakan fungsi in_array() untuk menentukan sama ada terdapat elemen dengan nilai "epal" dalam tatasusunan. Jika ia wujud, keluaran "epal wujud", jika tidak, keluaran "epal tidak wujud".

2. Dapatkan semua pasangan nilai kunci dalam tatasusunan

  1. Gunakan gelung foreach untuk melintasi tatasusunan

Dapatkan semua pasangan nilai kunci dalam tatasusunan, yang paling biasa Cara terbaik ialah menggunakan gelung foreach untuk melintasi tatasusunan. Kod sampel adalah seperti berikut:

$fruits = array(
    "apple" => "red",
    "banana" => "yellow",
    "orange" => "orange"
);

foreach ($fruits as $key => $value) {
    echo "$key is $value\n";
}
Salin selepas log masuk

Kod di atas mentakrifkan tatasusunan bersekutu $buah, mengandungi tiga elemen. Gunakan foreach untuk menggelung melalui tatasusunan dan mengeluarkan setiap pasangan nilai kunci.

  1. Gunakan fungsi array_keys() dan array_values() untuk mendapatkan semua kunci dan nilai masing-masing

Selain menggunakan gelung foreach, anda juga boleh menggunakan array_keys() dan array_values() functions Dapatkan semua kunci dan nilai dalam tatasusunan secara individu. Kod sampel adalah seperti berikut:

$fruits = array(
    "apple" => "red",
    "banana" => "yellow",
    "orange" => "orange"
);

$keys = array_keys($fruits);
$values = array_values($fruits);

print_r($keys);
print_r($values);
Salin selepas log masuk

Kod di atas mentakrifkan tatasusunan bersekutu $buah, mengandungi tiga elemen. Gunakan fungsi array_keys() dan array_values() untuk mendapatkan semua kunci dan nilai dalam $fruits dan simpannya masing-masing ke dalam $keys dan $values ​​​​variables. Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan nilai kedua-dua pembolehubah ini.

  1. Gunakan fungsi array_walk() untuk melintasi tatasusunan

Selain menggunakan fungsi foreach loop dan array_keys(), array_values(), kita juga boleh menggunakan array_walk() berfungsi untuk merentasi tatasusunan. Fungsi array_walk() boleh melaksanakan fungsi tersuai pada setiap pasangan nilai kunci dalam tatasusunan. Kod sampel adalah seperti berikut:

$fruits = array(
    "apple" => "red",
    "banana" => "yellow",
    "orange" => "orange"
);

function print_fruit($value, $key)
{
    echo "$key is $value\n";
}

array_walk($fruits, "print_fruit");
Salin selepas log masuk

Kod di atas mentakrifkan tatasusunan bersekutu $buah, mengandungi tiga elemen. Fungsi bernama print_fruit() ditakrifkan untuk mengeluarkan setiap pasangan nilai kunci dalam tatasusunan. Gunakan fungsi array_walk(), menghantar fungsi print_fruit() sebagai hujah kedua, untuk berjalan melalui tatasusunan dan melaksanakan fungsi tersuai.

Ringkasan

Artikel ini memperkenalkan cara untuk menanyakan pasangan nilai kunci tertentu dalam tatasusunan dalam PHP dan mendapatkan semua pasangan nilai kunci dalam tatasusunan. Dalam pembangunan sebenar, kita perlu memilih kaedah yang berbeza mengikut keperluan perniagaan tertentu. Jika anda hanya ingin menentukan sama ada kunci atau nilai tertentu wujud, anda boleh menggunakan fungsi isset(), array_key_exists() dan in_array(). Jika anda ingin mendapatkan semua pasangan nilai kunci, anda boleh menggunakan gelung foreach, array_keys(), array_values() fungsi atau array_walk() fungsi. Perlu diingatkan bahawa apabila menggunakan tatasusunan, jenis tatasusunan yang sesuai (tatasusunan biasa atau tatasusunan bersekutu) dan fungsi operasi tatasusunan yang sesuai hendaklah dipilih mengikut situasi khusus untuk meningkatkan prestasi dan kecekapan program.

Atas ialah kandungan terperinci Bagaimana untuk menanyakan tatasusunan dalam php dan mendapatkan pasangan nilai kunci. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah amalan terbaik untuk deduplikasi tatasusunan php Apakah amalan terbaik untuk deduplikasi tatasusunan php Mar 03, 2025 pm 04:41 PM

Apakah amalan terbaik untuk deduplikasi tatasusunan php

Apakah piawaian pengekodan PHP terkini dan amalan terbaik? Apakah piawaian pengekodan PHP terkini dan amalan terbaik? Mar 10, 2025 pm 06:16 PM

Apakah piawaian pengekodan PHP terkini dan amalan terbaik?

Bagaimana saya bekerja dengan sambungan php dan pecl? Bagaimana saya bekerja dengan sambungan php dan pecl? Mar 10, 2025 pm 06:12 PM

Bagaimana saya bekerja dengan sambungan php dan pecl?

Bolehkah PHP Array Deduplication memanfaatkan keunikan nama utama? Bolehkah PHP Array Deduplication memanfaatkan keunikan nama utama? Mar 03, 2025 pm 04:51 PM

Bolehkah PHP Array Deduplication memanfaatkan keunikan nama utama?

Bagaimana untuk melaksanakan beratur mesej (RabbitMQ, Redis) dalam PHP? Bagaimana untuk melaksanakan beratur mesej (RabbitMQ, Redis) dalam PHP? Mar 10, 2025 pm 06:15 PM

Bagaimana untuk melaksanakan beratur mesej (RabbitMQ, Redis) dalam PHP?

Adakah Deduplication Array PHP perlu dipertimbangkan untuk kerugian prestasi? Adakah Deduplication Array PHP perlu dipertimbangkan untuk kerugian prestasi? Mar 03, 2025 pm 04:47 PM

Adakah Deduplication Array PHP perlu dipertimbangkan untuk kerugian prestasi?

Apakah teknik pengoptimuman untuk deduplikasi tatasusunan php Apakah teknik pengoptimuman untuk deduplikasi tatasusunan php Mar 03, 2025 pm 04:50 PM

Apakah teknik pengoptimuman untuk deduplikasi tatasusunan php

Bagaimana menggunakan refleksi untuk menganalisis dan memanipulasi kod PHP? Bagaimana menggunakan refleksi untuk menganalisis dan memanipulasi kod PHP? Mar 10, 2025 pm 06:12 PM

Bagaimana menggunakan refleksi untuk menganalisis dan memanipulasi kod PHP?

See all articles