Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mencari nilai yang diberikan dalam tatasusunan dalam PHP dan mengembalikan kunci sepadan pertama jika berjaya

Bagaimana untuk mencari nilai yang diberikan dalam tatasusunan dalam PHP dan mengembalikan kunci sepadan pertama jika berjaya

WBOY
WBOYke hadapan
2024-03-19 16:30:07401semak imbas

Dalam pembangunan PHP, selalunya perlu mencari nilai tertentu dalam tatasusunan dan mengembalikan nama kunci yang sepadan. Fungsi ini boleh dicapai melalui fungsi array_search dalam PHP. Fungsi array_search mencari tatasusunan untuk nilai yang diberikan dan mengembalikan kunci sepadan pertama. Jika carian berjaya, nama kunci dikembalikan, jika tidak palsu dikembalikan. Fungsi ini sangat praktikal dan boleh membantu pembangun mengesan kedudukan nilai tertentu dalam tatasusunan dengan cepat dan meningkatkan kecekapan kod. Seterusnya, kami akan memperkenalkan secara terperinci cara menggunakan fungsi array_search dalam PHP untuk melaksanakan fungsi carian tatasusunan.

Gunakan fungsi in_array()

Fungsi

in_array() digunakan untuk menyemak sama ada nilai yang diberikan muncul dalam tatasusunan. Ia mengembalikan benar jika padanan ditemui, palsu sebaliknya. Untuk mendapatkan nama kunci padanan, anda boleh menggunakan sintaks berikut:

$key = array_search($value, $array, $strict = false);
  • $nilai: Nilai untuk dicari.
  • $array: Array untuk dicari.
  • $strict = palsu: (pilihan) Menunjukkan sama ada hendak melakukan perbandingan yang ketat. Jika benar, kedua-dua jenis dan nilai mesti sepadan.

Contohnya:

$array = ["apple", "banana", "orange"];

$key = array_search("banana", $array);
if ($key !== false) {
echo "键名:$key";
}

Keluaran:

键名:1

Gunakan fungsi array_keys()

Fungsi

array_keys() mengembalikan tatasusunan semua kunci dalam tatasusunan. Untuk mencari nilai tertentu, anda boleh menggunakan sintaks berikut:

$keys = array_keys($array, $value, $strict = false);
  • $array: Array untuk dicari.
  • $nilai: Nilai untuk dicari.
  • $strict = palsu: (pilihan) Menunjukkan sama ada hendak melakukan perbandingan yang ketat. Jika benar, kedua-dua jenis dan nilai mesti sepadan.

Jika padanan ditemui, array_keys() akan mengembalikan tatasusunan yang mengandungi nama kunci yang sepadan. Jika tidak, ia mengembalikan tatasusunan kosong.

Contohnya:

$array = ["apple" => "red", "banana" => "yellow", "orange" => "orange"];

$keys = array_keys($array, "yellow");
if (count($keys) > 0) {
echo "键名:";
foreach ($keys as $key) {
echo "$key ";
}
}

Keluaran:

键名:banana

Pilihan lain

Selain kaedah di atas, terdapat pilihan lain untuk mencari nilai dalam tatasusunan:

  • gelung foreach: Gelung melalui tatasusunan dan bandingkan menggunakan operator == atau ===.
  • array_filter(): Buat tatasusunan baharu yang mengandungi semua elemen yang memenuhi kriteria yang diberikan.
  • array_map(): Gunakan fungsi panggil balik pada setiap elemen dalam tatasusunan dan kembalikan nama kunci jika padanan ditemui.

Nota Prestasi

Apabila berurusan dengan tatasusunan yang sangat besar, mencari nilai dalam tatasusunan boleh menjadi perlahan. Untuk meningkatkan prestasi, anda boleh menggunakan petua berikut:

  • Gunakan diindeks tatasusunan bukannya tatasusunan bersekutu.
  • Gunakan jadual cincang atau kamus untuk menyimpan pasangan nilai kunci.
  • Pra-isih tatasusunan untuk mempercepatkan carian binari.

Atas ialah kandungan terperinci Bagaimana untuk mencari nilai yang diberikan dalam tatasusunan dalam PHP dan mengembalikan kunci sepadan pertama jika berjaya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam