Menggabungkan Pelbagai Nilai dalam Fungsi in_array() PHP
Fungsi in_array() dalam PHP sangat berharga untuk menentukan sama ada nilai tertentu wujud dalam tatasusunan. Walau bagaimanapun, hadnya ialah ia hanya boleh menilai satu nilai pada satu masa. Ini memberikan cabaran apabila anda perlu mengesahkan kehadiran berbilang nilai secara serentak.
Penyelesaian untuk Semua Nilai Yang Hadir:
Untuk memastikan sama ada semua nilai yang dinyatakan terdapat dalam tatasusunan, gunakan fungsi array_intersect(). Ia memerlukan dua tatasusunan sebagai input dan mengembalikan tatasusunan yang mengandungi elemen yang dikongsi di antara mereka. Dengan membandingkan panjang persilangan dengan bilangan nilai sasaran, anda boleh menentukan sama ada semua nilai hadir.
Contoh:
<code class="php">$haystack = array('apple', 'banana', 'orange', 'pear'); $target = array('apple', 'pear'); if(count(array_intersect($haystack, $target)) == count($target)){ echo 'All elements of $target are present in $haystack.'; }</code>
Penyelesaian untuk Sekurang-kurangnya Satu Nilai Hadir:
Sebagai alternatif, jika anda perlu menyemak sama ada sekurang-kurangnya satu nilai daripada set hadir dalam tatasusunan lain, lakukan operasi yang serupa menggunakan array_intersect(). Kali ini, bukannya membandingkan panjang persimpangan, cuma sahkan bahawa ia lebih besar daripada sifar.
Contoh:
<code class="php">if(count(array_intersect($haystack, $target)) > 0){ echo 'At least one element of $target is present in $haystack.'; }</code>
Dengan menggunakan teknik ini, anda boleh menyemak dengan cekap untuk kehadiran berbilang nilai dalam tatasusunan dan laraskan kod anda dengan sewajarnya.
Atas ialah kandungan terperinci Bagaimana untuk Semak Berbilang Nilai dalam Tatasusunan PHP dengan in_array()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!