如果这是$array_b
$array_b = array('red', 'green', 'blue');
将其与 $array_a
进行比较并获取 bool 值以判断 $array_a
是否包含上述 $array_b
的所有元素的有效方法是什么>.
这是我想要得到的输出
//false, because it's missing the red from `$array_b`
$array_a = array('green', 'blue');
//true, because it contains all 3 from `$array_b`
$array_a = array('red', 'green', 'blue');
//true, because it contains all 3 from `$array_b`
//even though there's an extra orange and cyan
$array_a = array('red', 'green', 'blue', 'orange', 'cyan');
有什么好方法可以做到这一点,而不需要难以跟踪的令人讨厌的嵌套循环?
最佳答案
if (count(array_intersect($array_a, $array_b)) == count($array_b)) {
...
}
或作为函数
function function_name($array_a, $array_b) {
return count(array_intersect($array_a, $array_b)) == count($array_b);
}
关于php - array_a 是否包含 array_b 的所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4945049/