php 求这样的两个数组的特殊交集,看似简单其实不然
$x=array(
array("a",2),
array("b",4),
array("e",3)
);
$y=array("b","f");
要求得到这样的结果:
array(
array("b",4),
array("f",0)
)
讲下思路,就是要以$y为依据来产生新数组,因为$y有两个元素,所以新数组也要有两个元素;因为$x中有b,所以b就取$x的值即4;又因为$x中没f,所以f取0
PHP怎么得到那样的结果啊?感激不尽!
------解决方案--------------------
PHP code
foreach($x as $v) $tmp[$v[0]]=$v[1];
foreach($y as $b)
$ar[]=array($b,$tmp[$b] ? $tmp[$b] : 0);
print_r($ar);