Mengoptimumkan Pengesahan Integer Tatasusunan dengan Fungsi PHP Asli
Mengesahkan bahawa tatasusunan mengandungi hanya integer ialah tugas biasa. Walaupun melelaran melalui tatasusunan dan memeriksa jenis setiap elemen boleh menjadi pendekatan yang mudah, PHP menyediakan alternatif yang lebih ringkas.
Satu penyelesaian sedemikian menggunakan fungsi array_filter, yang mengambil tatasusunan dan fungsi penilaian sebagai argumen. Dalam kes kami, kami lulus is_int sebagai fungsi penilaian. Jika semua elemen tatasusunan kembali benar apabila dihantar ke is_int, ia membayangkan bahawa tatasusunan hanya mengandungi integer. Sebaliknya, jika mana-mana elemen mengembalikan palsu, kehadiran data bukan angka disahkan.
<code class="php">$only_integers === array_filter($only_integers, 'is_int'); // true $letters_and_numbers === array_filter($letters_and_numbers, 'is_int'); // false</code>
Untuk menyelaraskan lagi proses ini, kami boleh menentukan dua fungsi pembantu: semua dan mana-mana. semua menyemak jika semua elemen tatasusunan memenuhi predikat yang diberikan, manakala mana-mana mengesahkan jika mana-mana elemen memenuhi syarat.
<code class="php">function all($elems, $predicate) { foreach ($elems as $elem) { if (!call_user_func($predicate, $elem)) { return false; } } return true; } function any($elems, $predicate) { foreach ($elems as $elem) { if (call_user_func($predicate, $elem)) { return true; } } return false; }</code>
Dengan menggunakan sebarang dan is_int, kami boleh menyatakan logik pengesahan integer dengan ringkas:
<code class="php">any($array, 'is_int');</code>
Jika hasilnya benar, ia menandakan tatasusunan mengandungi sekurang-kurangnya satu elemen bukan integer; jika tidak, ia mengesahkan bahawa semua elemen adalah integer.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesahkan Komposisi Integer Tatasusunan Dengan Cepat Menggunakan Fungsi PHP Asli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!