International PHP Conference Berlin 2025

array_sum

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

array_sumBir dizideki değerlerin toplamını hesaplar

Açıklama

array_sum(array $dizi): int|float

array_sum() işlevi belirtilen dizideki değerlerin toplamını bulur.

Bağımsız Değişkenler

dizi

Değerleri toplanacak dizi.

Dönen Değerler

Toplam bir tamsayı veya gerçek sayı olarak döner. dizi boşsa 0 döner.

Sürüm Bilgisi

Sürüm: Açıklama
8.3.0 dizi değerleri int veya float türüne dönüştürülemiyorsa artık bir E_WARNING yayımlanıyor. Daha önce array ve object türündekiler göz ardı edilirken diğer tüm değerler int değere dönüştürülüyordu. Dahası, sayısal bir dönüştürmeyi tanımlayan nesneler de (örneğin GMP) artık yok sayılmak yerine dönüştürülüyor.

Örnekler

Örnek 1 - array_sum() örnekleri

<?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";
?>

Yukarıdaki örneğin çıktısı:

sum(a) = 20
sum(b) = 6.9

add a note

User Contributed Notes 2 notes

up
22
rodrigo at adboosters dot com
2 years ago
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
?>
up
1
harl at gmail dot com
1 year ago
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.
To Top