PHP 的in_array() 函數專為檢查值是否存在而設計,在驗證多個值時存在局限性同時值。本文旨在解決這個挑戰,提出兩個場景的解決方案:
檢查所有值的存在
要確定一個數組是否包含另一個數組中的所有元素,使用以下方法:
<code class="php">$haystack = array(...); $target = array('foo', 'bar'); if (count(array_intersect($haystack, $target)) == count($target)) { // all of $target is in $haystack }</code>
intersect 函數查找兩個數組之間的公共元素,並將其計數與目標數組的大小進行比較,確保所有目標值都存在於乾草堆中。
檢查是否有任何值
相反,要驗證haystack 陣列是否至少包含目標陣列中的一個值,請使用下列語法:
<code class="php">if (count(array_intersect($haystack, $target)) > 0) { // at least one of $target is in $haystack }</code>
這裡,我們檢查交集的計數是否大於零,表示目標陣列中至少有一個值存在於乾草堆中。
以上是如何使用 in_array() 檢查 PHP 陣列中的多個值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!