Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengesahkan Tatasusunan Integer Sahaja dengan Cekap dalam PHP?
Salah satu cara untuk menyemak sama ada tatasusunan mengandungi integer secara eksklusif adalah melalui lelaran manual dan fungsi is_int(). Walau bagaimanapun, pendekatan yang lebih cekap menggunakan fungsi PHP asli:
array_filter() mengekalkan elemen tatasusunan yang memenuhi syarat yang ditetapkan. Mengaplikasikannya dengan is_int() sebagai predikat secara langsung menghasilkan tatasusunan yang ditapis:
<code class="php">$only_integers = array_filter($only_integers, 'is_int'); // true $letters_and_numbers = array_filter($letters_and_numbers, 'is_int'); // false</code>
Pendekatan ini boleh ditambah dengan fungsi pembantu boleh guna semula:
<code class="php">/** * Verify all elements of an array satisfy a given predicate. * * @param array $elems Array to evaluate * @param callable $predicate Predicate to apply * @return bool TRUE if all elements pass, FALSE otherwise */ function all($elems, $predicate) { foreach ($elems as $elem) { if (!call_user_func($predicate, $elem)) { return false; } } return true; } /** * Verify any element of an array satisfies a given predicate. * * @param array $elems Array to evaluate * @param callable $predicate Predicate to apply * @return bool TRUE if any element passes, FALSE otherwise */ function any($elems, $predicate) { foreach ($elems as $elem) { if (call_user_func($predicate, $elem)) { return true; } } return false; }</code>
Dengan menggunakan fungsi pembantu ini, kod asal boleh dipermudahkan:
<code class="php">$has_only_ints = all($only_integers, 'is_int'); // true $has_only_ints = all($letters_and_numbers, 'is_int'); // false</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Tatasusunan Integer Sahaja dengan Cekap dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!