Heim >Backend-Entwicklung >PHP-Tutorial >2个数组相加,将一个数组写入另一个数组

2个数组相加,将一个数组写入另一个数组

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-23 14:21:051177Durchsuche

已知数组a和数组b:

//数组a:array (  0 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '2X15',    'part_count' => '0',  ),  1 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '2Z25',    'part_count' => '5',  ),)//数组b:array (  0 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '2Z15',    'part_count' => '100',  ),  1 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '3115',    'part_count' => '28',  ),)


把数组b的结果加入数组a,同cust_no,lotno对应的part_count累加。变成这样的结果:
array (  0 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '2X15',    'part_count' => '0',  ),  1 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '2Z15',    'part_count' => '105',  ),  2 =>   array (    'cust_no' => '310F6 1VA5A',    'lotno' => '3115',    'part_count' => '28',  ),)

这样如何做到?需要用哪些数组函数?谢谢!


回复讨论(解决方案)

$t=array();foreach(array_merge($a,$b) as $v){     if(!isset($t[$v['cust_no'].'_'.$v['lotno']])){	     $t[$v['cust_no'].'_'.$v['lotno']]=$v;	 }else{	      $t[$v['cust_no'].'_'.$v['lotno']]['part_count']+=$v['part_count'];	 }	 } print_r(array_values($t));


$v['cust_no'].'_'.$v['lotno']这句是什么意思?

将 cust_no 和 lotno的值组成键判断重复用的

将 cust_no 和 lotno的值组成键判断重复用的
哦,原来可以这样用啊。谢谢了!

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