Dalam pembangunan PHP, tatasusunan ialah salah satu jenis data yang kerap digunakan. Kadangkala kita perlu menentukan sama ada nilai tertentu wujud dalam tatasusunan Kita boleh menggunakan fungsi in_array() untuk mencapai ini. Tetapi bagaimana jika kita perlu menentukan sama ada nilai tidak wujud dalam tatasusunan? Artikel ini akan memperkenalkan dua kaedah untuk menyelesaikan masalah ini.
Kaedah 1: Gunakan fungsi !in_array()
Fungsi in_array() boleh menentukan sama ada nilai wujud dalam tatasusunan Jika ia wujud, ia akan mengembalikan benar, jika tidak ia mengembalikan palsu. Kemudian gunakan fungsi !in_array() untuk menentukan sama ada nilai tidak wujud dalam tatasusunan. Seperti yang ditunjukkan di bawah:
$array = array(1, 2, 3, 4, 5); if (!in_array(6, $array)) { echo '6不存在于数组中'; }
Dalam kod, ia dinilai sama ada 6 tidak wujud dalam tatasusunan Jika ia tidak wujud, ia mengeluarkan '6 tidak wujud dalam tatasusunan'.
Kaedah 2: Gunakan fungsi array_search()
array_search() untuk mencari nilai yang diberikan dalam tatasusunan dan mengembalikan nama kunci yang sepadan. Jika carian berjaya, nama kunci dikembalikan jika tidak, palsu dikembalikan. Kemudian, jika anda ingin menentukan sama ada nilai tidak wujud dalam tatasusunan, anda boleh menggunakan fungsi array_search(). Seperti yang ditunjukkan di bawah:
$array = array(1, 2, 3, 4, 5); if (false === array_search(6, $array)) { echo '6不存在于数组中'; }
Dalam kod, gunakan fungsi array_search() untuk mencari nama kunci 6 dalam tatasusunan $array Jika carian gagal dan mengembalikan palsu, ia dinilai bahawa 6 tidak wujud dalam tatasusunan, dan '6 tidak wujud' ialah output dalam tatasusunan'.
Walau bagaimanapun, perlu diingat bahawa apabila menggunakan fungsi !in_array() atau array_search() untuk menentukan sama ada nilai tidak wujud dalam tatasusunan, anda perlu membandingkan kedua-dua jenis dan nilai nilai pulangan , bukan sekadar nilai perbandingan. Kerana dalam PHP, false kadangkala dianggap sebagai 0 atau rentetan kosong. Oleh itu, lebih baik menggunakan "===" sebagai perbandingan. Contohnya: Dalam kod
$array = array(0, false, "", null); if (false === array_search(0, $array)) { echo "0不在数组中"; } if (false === in_array(false, $array)) { echo "false不在数组中"; } if (false === in_array("", $array)) { echo "空字符串不在数组中"; } if (false === in_array(null, $array)) { echo "null不在数组中"; }
, tatasusunan $array mengandungi 0, false, rentetan kosong dan null Gunakan fungsi array_search() dan in_array() untuk menentukan sama ada nilai ini tidak wujud dalam. tatasusunan. Oleh kerana false mempunyai jenis yang berbeza daripada 0 dan rentetan kosong, "===" mesti digunakan untuk perbandingan.
Di atas adalah dua kaedah untuk menilai bahawa nilai tertentu tidak wujud dalam tatasusunan saya harap ia akan membantu pembangunan PHP.
Atas ialah kandungan terperinci PHP menentukan bahawa ia tidak wujud dalam tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!