怎么取数组的交集,求大神指导
程序员文章站
2022-06-05 17:47:13
...
这是两个二维数组$arr,$arr1,怎么取出相同的交集$arr = array( array("id" => "3","name" => "张三"), array("id" => "6","name" => "李四"), array("id" => "8","name" => "王五"), array("id" => "18","name" => "赵六"), array("id" => "20","name" => "七七") );$arr1 = array( array("id" => "6","name" => "张三",), array("id" => "18","name" => "赵六"),);想要的结果是array( array("id" => "6","name" => "张三",), array("id" => "18","name" => "赵六"));
回复讨论(解决方案)
$arr = array( array("id" => "3","name" => "张三"), array("id" => "6","name" => "李四"), array("id" => "8","name" => "王五"), array("id" => "18","name" => "赵六"), array("id" => "20","name" => "七七") );$arr1 = array( array("id" => "6","name" => "张三",), array("id" => "18","name" => "赵六"),);foreach($arr as $a) foreach($arr1 as $k=>$b) if($a == $b) { $r[] = $b; unset($arr1[$k]); }print_r($r);
Array( [0] => Array ( [id] => 18 [name] => 赵六 ))
可是我想要的结果是这个:
$arr1 = array( array("id" => "6","name" => "张三",), array("id" => "18","name" => "赵六"),);
是我看错了,sorry
上一篇: mysql查询问题,like的反向使用?
下一篇: 网传是腾讯公司PHP程序员面试题
推荐阅读