PHP array_sum - почему array_sum не работает для следующего скрипта? - PullRequest
0 голосов
/ 25 февраля 2020

Я видел прочитанные другие посты, которые почти похожи на мою проблему. но я не могу найти правильный ответ на мою проблему. здесь у меня есть массив $data[4], подобный следующему.

Array ( [0] => 0.84 ) Array ( [0] => 2.79 ) 

и этот мой код php для вычисления значения в переменной $ data [4]

$a= array();
foreach(array($data[4]) as $datas) {
    $a[] = $datas;
}
 print_r($a); 

 $sum = array_sum($a);
 echo $sum;

}

но результаты не рассчитываются, вместо отображения значений из массива данных $data[4], как это

0.84
2.79

Ответы [ 2 ]

0 голосов
/ 25 февраля 2020

Предположим, что ваш массив похож на $data[4] = [[0.89],[2.79]], тогда вы можете использовать этот код для получения суммы.

$sum = 0;
foreach($data[4] as $datas) {
    $sum +=  array_sum($datas);
}
echo $sum;
0 голосов
/ 25 февраля 2020

У вас есть два массива с индексом 0 в $data[4]. Вы должны сгладить это $a, вы можете добавить дополнительный foreach.

$a= array();
foreach(array($data[4]) as $datas) {
    foreach($datas as $item) { // here - extra foreach
        $a[] = $item;
    }
}
 print_r($a); 

 $sum = array_sum($a);
 echo $sum;

}

Кстати - рассмотрите возможность использования var_export, чтобы более точно показать, что находится в ваших данных:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...