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

WBOY
Lepaskan: 2024-03-19 16:32:01
ke hadapan
380 orang telah melayarinya

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);
Salin selepas log masuk
  • $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"; }
Salin selepas log masuk

Keluaran:

键名:1
Salin selepas log masuk

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);
Salin selepas log masuk
  • $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 "; } }
Salin selepas log masuk

Keluaran:

键名:banana
Salin selepas log masuk

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:

  • Gunakandiindekstatasusunan bukannya tatasusunan bersekutu.
  • Gunakan jadual cincang atau kamus untuk menyimpan pasangan nilai kunci.
  • Pra-isih tatasusunanuntuk 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!

Label berkaitan:
sumber:lsjlt.com
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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!