我正在尋找一種方法來確認 modelArray 的內容是否存在于 array1-3 中。我不是在檢查訂單,只是如果 modelArray 的內容包含在測試的數組中,包括考慮重復項(modelArray 中的兩個 2,因此如果被測試的數組至少有兩個 2,則應該返回 true)。幫助將不勝感激。我只是想學習,也許是想看看我是否可以簡單地測試一下,看看購物車是否包含捆綁包所需的物品(一個捆綁包需要兩個物品才能合格,因此在modelArray中有重復的2)。我查看了stackoverflow并嘗試了array_intersect()和array_diff()。但是,我需要以下自定義用例的幫助。$modelArray = array(1,2,2,3,4); // the two 2's are intentional$array1 = array(1,2,3,4); // should return False$array2 = array(1,2,3,4,2,5,6,7,8); //should return True$array3 = array(1,4,9,5); // should return Falsefunction containsModel () {//return if True or False}?>````
1 回答

至尊寶的傳說
TA貢獻1789條經驗 獲得超10個贊
如果數組的差異不是空數組,您可以遍歷數組并使用array_diff檢查:
function containsModel ($array) {
$items = array(
array(1,2,3,4),
array(1,2,3,4,2,5,6,7,8),
array(1,4,9,5)
);
foreach ($items as $item) {
if (!empty(array_diff($array, $item))) {
return false;
}
}
return true;
}
$modelArray = array(1,2,2,3,4);
$res = containsModel($modelArray);
var_dump($res);
- 1 回答
- 0 關注
- 121 瀏覽
添加回答
舉報
0/150
提交
取消