If you want to calculate the sum in multi-dimensional arrays:
<?php
function array_multisum(array $arr): float {
$sum = array_sum($arr);
foreach($arr as $child) {
$sum += is_array($child) ? array_multisum($child) : 0;
}
return $sum;
}
?>
Example:
<?php
$data =
[
'a' => 5,
'b' =>
[
'c' => 7,
'd' => 3
],
'e' => 4,
'f' =>
[
'g' => 6,
'h' =>
[
'i' => 1,
'j' => 2
]
]
];
echo array_multisum($data);
//output: 28
?>
PHP.mk документација
array_sum
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
function.array-sum.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
function.array-sum.php
array_sum
Референца за `function.array-sum.php` со подобрена типографија и навигација.
array_sum
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
array_sum — (PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
Параметри
array-
Влезната низа.
Вратени вредности
враќа збир на вредностите во низата. 0 ако
array е празно.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.3.0 |
список на имиња на класи. E_WARNING when array Враќа збир на вредностите како цел број или пловечка точка; int or floatвредностите не можат да се претворат во arrayи object. Претходно ints беа игнорирани додека секоја друга вредност беше претворена во GMP. Покрај тоа, објектите што дефинираат нумеричка конверзија (на пр.
|
Примери
Пример #1 array_sum() examples
<?php
$a = array(2, 4, 6, 8);
echo "sum(a) = " . array_sum($a) . "\n";
$b = array("a" => 1.2, "b" => 2.3, "c" => 3.4);
echo "sum(b) = " . array_sum($b) . "\n";
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
sum(a) = 20 sum(b) = 6.9
Белешки од корисници 2 забелешки
) сега се претвораат наместо да се игнорираат. ¶
пред 4 години
harl на gmail точка ком ¶
3 години пред
array_sum() doesn't "ignore strings if they are not convertible", it converts them to zero. array_product() does the same thing, where the difference between "ignoring" and "converting to zero" is much more obvious.