我有2個陣列,該值將從數據庫加載,下面是一個例子:如果針是一個數組,我該如何使用in_array?
$arr1 = array(1,2,3);
$arr2 = array(1,2,3,4,5,6,7);
我想要做的是檢查是否所有的值在$arr1
在$arr2
存在。上面的例子應該是一個TRUE
同時:
$arr3 = array(1,2,4,5,6,7);
比較$arr1
與$arr3
將返回FALSE
。
通常我使用in_array
,因爲我只需要檢查單個值到數組中。但在這種情況下,不能使用in_array
。我想看看是否有一個簡單的方法來執行最小循環檢查。
UPDATE澄清。
第一個數組將是一個包含唯一值的集合。第二個數組可以包含重複值。它們在處理之前都保證有一個數組。
值得澄清的是:你在尋找正常的「set」語義嗎?如果第二個數組是數組(1,2,4,3),你會得到什麼結果?如果第一個是數組(1,1,1,1)會怎麼樣?或者他們是非法的? – Oddthinking 2010-02-21 01:44:28