Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: функция array_sum
 
 автор: riskk   (23.06.2006 в 13:27)   письмо автору
 
 

Имеется массив

 $a = array();
 $a[1][1][1] = 7;
 $a[1][2][2] = 8;
 $a[2][1][3] = 3;
 $a[2][1][4] = 5;
 $a[1][3][5] = 1;

Мне надо получить сумму с index=2(первый уровень $a[2][1][3] + $a[2][1][4] ), Но функция array_sum($a[2]) возвращает ноль. Как теперь мне быть.

   
 
 автор: valenok   (23.06.2006 в 13:59)   письмо автору
 
   для: riskk   (23.06.2006 в 13:27)
 


array_sum($a[2][1]);
или 
for($i=0;<$i<count($a[2]);$i++){
$sum+=array_sum($a[2][$i]);
}

   
 
 автор: riskk   (23.06.2006 в 14:23)   письмо автору
 
   для: valenok   (23.06.2006 в 13:59)
 

массив может быть $a[2][3][12], $a[2][4][12], $a[2][5][12], $a[2][6][12]...
в общем какие нибудь другие варианты есть

   
 
 автор: Саня   (23.06.2006 в 15:03)   письмо автору
 
   для: riskk   (23.06.2006 в 14:23)
 

Если массив всегда трёхмерный, тогда можно сделать так:
<?php
$sum 
0;
foreach ( 
$a[2] as $arr ) {
  foreach ( 
$arr as $val ) {
    
$sum += $val;
  }
}
print 
$sum;
?>

   
 
 автор: riskk   (23.06.2006 в 15:13)   письмо автору
 
   для: Саня   (23.06.2006 в 15:03)
 

спасибо Саня

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования