返回一个数组的值,但不包括第二个数组的值

时间:2015-12-15 10:15:19

标签: php arrays

我有以下两个数组: the 2 arrays

  

问题:   如何制作包含第一个数值的第3个数组   排除第二个的值?

其他信息:

第一个名为$ checked,第二个名为$ exclude。 要排除的值始终存储在第二个数组中。 数组的长度,值和顺序可能会发生变化。

所以在这种情况下我得到了这个结果:

     Array ( [0] => 26 [1] => 28 [2] => 34 ) <-- array 3: 

3 个答案:

答案 0 :(得分:1)

循环遍历第一个数组,然后检查第二个数组中是否存在该值,如果不存在,则将其添加到第三个数组中。或者使用Uchiha提出的array_diff函数。

foreach($array1 as $items){
    if(!in_array($array2,$item)){
        $array3[] = $item
    }
}

答案 1 :(得分:1)

try-catch

答案 2 :(得分:1)

您可以使用array_diff()

$checked = array(26,28,34,39,41);
$exclude = array(39, 41);
$result = array_diff($checked, $exclude);
print_r($result);

结果:

Array ( [0] => 26 [1] => 28 [2] => 34 )