Maison  >  Article  >  développement back-end  >  数组 array_sum()怎么求不了总和?

数组 array_sum()怎么求不了总和?

WBOY
WBOYoriginal
2016-06-23 13:57:451145parcourir

array_sum()求一个三维数组的总和,结果是0,$count的出来的结果是91125。求各位大神解释一下,谢谢。

 $count=0; $brr=array(); for($i=0;$i<10;$i++){ 	for($j=0;$j<10;$j++) 	{ 		for($k=0;$k<10;$k++) 		{ 			$brr[$i][$j][$k]=$i*$j*$k; 			$count+=$brr[$i][$j][$k]; 		} 	} }var_dump($brr);var_dump($count);var_dump(array_sum($brr));


回复讨论(解决方案)

array_sum不能直接用于多维数组之和吧

array_sum只针对一维数组,你那是多维数组啊

function m_array_sum($ar) {  $r = 0;  foreach($ar as $item) {    if(is_array($item)) $r += m_array_sum($item);  }  return $r + array_sum($ar);}echo m_array_sum($brr);
91125

还真不知道,原来是这么回事,谢谢,才开始看php没几天,所以不知道啊..

function m_array_sum($ar) {  $r = 0;  foreach($ar as $item) {    if(is_array($item)) $r += m_array_sum($item);  }  return $r + array_sum($ar);}echo m_array_sum($brr);
91125


非常感谢!
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