Maison  >  Article  >  développement back-end  >  php 求这样的两个数组的特殊交集,看似简单其实不然解决办法

php 求这样的两个数组的特殊交集,看似简单其实不然解决办法

WBOY
WBOYoriginal
2016-06-13 13:34:09846parcourir

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); <div class="clear">
                 
              
              
        
            </div>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn