Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menentukan sama ada tatasusunan php mengandungi nilai yang ditentukan
Dalam pengaturcaraan PHP, tatasusunan ialah struktur data yang sangat biasa digunakan. Apabila mengendalikan tatasusunan, kadangkala kita perlu menentukan sama ada nilai dalam tatasusunan mengandungi nilai tertentu. Jadi, bagaimana untuk melaksanakan fungsi sama ada nilai tatasusunan PHP mengandungi? Mari perkenalkan secara terperinci di bawah.
1. Gunakan fungsi in_array()
in_array() ialah salah satu fungsi terbina dalam PHP, digunakan untuk menentukan sama ada nilai berada dalam tatasusunan. Sintaksnya adalah seperti berikut:
in_array($needle, $haystack, $strict)
Antaranya, $needle mewakili nilai yang hendak dicari, $haystack mewakili tatasusunan yang hendak dicari dan $strict merekodkan sama ada mod ketat dihidupkan, iaitu, sebagai tambahan untuk menilai nilai, jenis data juga dinilai.
Contohnya:
$array = array('apple', 'banana', 'orange'); if (in_array('apple', $array)) { echo '找到了'; // 输出:找到了 } else { echo '没找到'; }
2. Gunakan fungsi array_search()
array_search() juga merupakan salah satu fungsi terbina dalam PHP, digunakan untuk mencari nama kunci sesuatu nilai dalam tatasusunan. Jika nilai tidak wujud dalam tatasusunan, mengembalikan palsu. Sintaksnya adalah seperti berikut:
array_search($needle, $haystack, $strict)
Contohnya:
$array = array('apple' => 'red', 'banana' => 'yellow', 'orange' => 'orange'); $result = array_search('red', $array); if ($result !== false) { echo '找到了,键名是:' . $result; // 输出:找到了,键名是:apple } else { echo '没找到'; }
3 Gunakan fungsi in_array() dan array_keys() fungsi
Anda boleh menggunakan in_array() function dan array_keys. () berfungsi pada masa yang sama Untuk mencari nama kunci nilai tertentu dalam tatasusunan. Antaranya, fungsi in_array() digunakan untuk menentukan sama ada nilai berada dalam tatasusunan, dan fungsi array_keys() digunakan untuk mengembalikan nama kunci yang sepadan dengan nilai dalam tatasusunan. Sintaksnya adalah seperti berikut:
$keys = array_keys($array, $value)
Contohnya:
$array = array('apple' => 'red', 'banana' => 'yellow', 'orange' => 'orange'); if (in_array('red', $array)) { $keys = array_keys($array, 'red'); echo '找到了,键名是:' . $keys[0]; // 输出:找到了,键名是:apple } else { echo '没找到'; }
Perlu diingat bahawa jika terdapat berbilang nilai yang sama dalam tatasusunan, fungsi array_keys() mengembalikan tatasusunan kunci nama yang sepadan dengan semua nilai Dan bukan hanya yang pertama.
4. Gunakan fungsi isset()
Akhir sekali, sesetengah pemula PHP boleh menggunakan fungsi isset() untuk menentukan sama ada nilai berada dalam tatasusunan. Walau bagaimanapun, tujuan utama fungsi isset() adalah untuk menentukan sama ada pembolehubah wujud, dan tidak disyorkan untuk menentukan sama ada nilai berada dalam tatasusunan.
Oleh kerana fungsi isset() hanya menentukan sama ada nilai tertentu ditakrifkan, tetapi tidak boleh menentukan sama ada ia berada dalam tatasusunan. Contohnya:
$array = array('apple' => 'red', 'banana' => 'yellow', 'orange' => 'orange'); if (isset($array['red'])) { echo '找到了'; // 不会输出 } else { echo '没找到'; }
Dalam kod di atas, fungsi isset() akan mengembalikan false, tetapi sebenarnya tiada unsur dengan nama kunci 'merah' dalam tatasusunan. Oleh itu, jangan gunakan fungsi isset() apabila menentukan sama ada nilai berada dalam tatasusunan.
Ringkasan:
Sama ada nilai tatasusunan PHP mengandungi atau tidak boleh dilaksanakan menggunakan fungsi in_array() dan fungsi array_search() Ia juga boleh dilaksanakan menggunakan fungsi array_keys() dan in_array () fungsi, tetapi tidak Adalah disyorkan untuk menggunakan fungsi isset() untuk menentukan sama ada nilai itu berada dalam tatasusunan. Dalam pembangunan sebenar, adalah sangat penting untuk memilih kaedah yang sesuai untuk melaksanakan sama ada nilai tatasusunan PHP dimasukkan mengikut keperluan sebenar.
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada tatasusunan php mengandungi nilai yang ditentukan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!