値の存在チェック用に設計された PHP の in_array() 関数には、複数の値の検証に関して制限があります。価値観を同時に。この記事は、この課題に対処することを目的として、次の両方のシナリオに対する解決策を示します。
すべての値の存在を確認する
配列に別の配列のすべての要素が含まれているかどうかを確認するには、次のアプローチを使用します:
$haystack = array(...);
$target = array('foo', 'bar');
if (count(array_intersect($haystack, $target)) == count($target)) {
// all of $target is in $haystack
}
intersect 関数は 2 つの配列間の共通要素を検索し、その数とターゲット配列のサイズを比較することで、すべてのターゲット値が干し草の山に存在することを確認します。
チェック任意の値の存在の場合
対照的に、干し草の山の配列にターゲット配列の値が少なくとも 1 つ含まれているかどうかを確認するには、次の構文:
if (count(array_intersect($haystack, $target)) > 0) {
// at least one of $target is in $haystack
}
ここでは、交差のカウントが 0 より大きいかどうかを確認します。これは、ターゲット配列の少なくとも 1 つの値が干し草の山に存在することを示しています。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3