Heim  >  Artikel  >  Backend-Entwicklung  >  php二维数组雷同键名相加_PHP教程

php二维数组雷同键名相加_PHP教程

WBOY
WBOYOriginal
2016-07-13 10:27:101077Durchsuche

   php二维数组相同键名相加

  Array

  (

  [uid] => 19

  [pid] => Array

  (

  [0] => 91

  [1] => 81

  )

  [price] => Array

  (

  [0] => 6

  [1] => 14

  )

  [pnum] => Array

  (

  [0] => 1

  [1] => 1

  )

  )

  求相同键名的值相加如(price 的相加结果) 数组条数不确定

  ------解决方案--------------------

  $ar = Array(

  'uid' => 19,

  'pid' => Array (

  0 => 91,

  1 => 81,

  ),

  'price' => Array (

  0 => 6,

  1 => 14,

  ),

  'pnum' => Array (

  0 => 1,

  1 => 1,

  ),

  );

  $r = array_map(function($t) {

  return is_array($t) ? array_sum($t) : $t;

  }, $ar);

  print_r($r);

  Array

  (

  [uid] => 19

  [pid] => 172

  [price] => 20

  [pnum] => 2

  )

  ------解决方案--------------------

  直接用foreach也可以。

  $ar = Array(

  'uid' => 19,

  'pid' => Array (

  0 => 91,

  1 => 81,

  ),

  'price' => Array (

  0 => 6,

  1 => 14,

  ),

  'pnum' => Array (

  0 => 1,

  1 => 1,

  ),

  );

  foreach($ar as $k=>$v){

  $arr[$k] = is_array($v) ? array_sum($v) : $v;

  }

  print_r($arr);

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/820418.htmlTechArticlephp二维数组相同键名相加 Array ( [uid] = 19 [pid] = Array ( [0] = 91 [1] = 81 ) [price] = Array ( [0] = 6 [1] = 14 ) [pnum] = Array ( [0] = 1 [1] = 1 ) ) 求相同键名的值...
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