$q[] = Array ('a' => 'b2', 'b' =>'23' );
$q[] = Array ('a' => 'a5', 'b' =>'23' )
$s[] = Array ('c' => 'k1', 'a' =>'84', 'd' => '0' );
$s[] = Array ('c' => '19', 'a' =>'a5', 'd' => '0' );
$s[] = Array ('c' => '80', 'a' =>'60', 'd' => '0' );
$s[] = Array ('c' => '80', 'a' =>'b2', 'd' => '0' );
$d = array_diff($s,$q);//知道不是这样写我希望
比对$s和$q的 key:'a',当$s中存在$q相同的'a'的时候就把整组删掉,如'a'分别为'b2','a5';
然后得到一个新的数组 $d 的值是;他的值应该是:
Array ('c' => 'k1', 'a' =>'84', 'd' => '0' );
Array ('c' => '80', 'a' =>'60', 'd' => '0' );======================================
该如何实现呢?
$a_arr =array();
for ($i=0;$i<count($array1);$i++){
foreach ($array1[$i] as $k=>$v){
if ($k=='a')$a_arr[]=$v;
}
}
$return_array=array();
for ($i=0;$i<count($array2);$i++){
foreach ($array2[$i] as $k=>$v){
if ($k=='a' && in_array($v,$a_arr))continue 2;
}
$return_array[]= $array2[$i];
}
return $return_array;
}