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

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

WBOY
WBOYOriginal
2016-06-13 13:34:09846Durchsuche

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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn