ネイティブ PHP 関数を使用した配列整数検証の最適化
配列に整数のみが含まれていることを検証することは一般的なタスクです。配列を反復処理して各要素の型を調べるのは簡単なアプローチですが、PHP ではより簡潔な代替手段が提供されています。
そのようなソリューションの 1 つは、配列と評価関数を引数として受け取る array_filter 関数を利用します。この例では、評価関数として is_int を渡します。 is_int に渡されたときに配列のすべての要素が true を返す場合、それは配列に整数のみが含まれていることを意味します。逆に、いずれかの要素が false を返した場合は、数値以外のデータの存在が確認されます。
<code class="php">$only_integers === array_filter($only_integers, 'is_int'); // true $letters_and_numbers === array_filter($letters_and_numbers, 'is_int'); // false</code>
このプロセスをさらに効率化するために、all と any という 2 つのヘルパー関数を定義できます。 all は配列のすべての要素が指定された述語を満たすかどうかをチェックし、any はいずれかの要素が条件を満たすかどうかを検証します。
<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>
any と is_int を利用することで、整数検証ロジックを簡潔に表現できます。
<code class="php">any($array, 'is_int');</code>
結果が true の場合、配列に少なくとも 1 つの非整数要素が含まれていることを意味します。それ以外の場合は、すべての要素が整数であることが確認されます。
以上がネイティブ PHP 関数を使用して配列の整数構成を迅速に検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。