Menyemak Kekangan Rentetan Dalam Tatasusunan (Tidak Peka Huruf Besar)
Soalan:
Bagaimanakah rentetan boleh disemak untuk menentukan sama ada ia termasuk mana-mana elemen dalam tatasusunan, tanpa mengira perbezaan kes?
Contoh Kod:
$string = 'My nAmE is Tom.'; $array = array("name", "tom"); if (contains($string, $array)) { // Perform an action indicating that the string contains an element from the array }
Penyelesaian:
Tiada fungsi terbina dalam yang direka khusus untuk tujuan ini. Walau bagaimanapun, fungsi mengandungi() tersuai boleh dibuat seperti berikut:
function contains($str, array $arr) { foreach ($arr as $a) { if (stripos($str, $a) !== false) { return true; } } return false; }
Penjelasan:
Fungsi contains() berulang melalui setiap elemen dalam $arr tatasusunan. Untuk setiap elemen, ia menggunakan stripos() untuk menyemak sama ada ia wujud dalam rentetan $str, dengan mengambil kira ketakpekaan kes. Jika mana-mana elemen ditemui dalam rentetan, fungsi itu kembali benar. Jika tidak, ia mengembalikan palsu, menunjukkan bahawa tiada unsur tatasusunan ditemui dalam rentetan.
Atas ialah kandungan terperinci Bagaimana untuk Memeriksa sama ada Rentetan Mengandungi Sebarang Elemen daripada Tatasusunan (Tidak Peka Huruf)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!