Array sum: примеры (PHP)

array_sum в PHP: полное руководство с практическими примерами
Раздел: Работа с массивами
array_sum(array $array): int|float

Функция array_sum в PHP

Функция array_sum() вычисляет сумму значений элементов массива. Она принимает один аргумент - массив, значения которого суммируются. Функция часто используется для статистических расчетов, финансовых операций и обработки числовых данных.

Аргументы функции

Единственный параметр:

  • array - массив значений для суммирования. Если передать не массив, PHP попытается преобразовать значение в массив.
Возвращаемое значение

Функция возвращает сумму значений в виде целого числа или числа с плавающей точкой. Для пустого массива возвращается 0.

Базовые примеры использования

Сумма целых чисел
$numbers = [1, 2, 3, 4, 5];
echo array_sum($numbers);
15
Сумма чисел с плавающей точкой
$prices = [10.5, 20.3, 30.2];
echo array_sum($prices);
61
Смешанные типы данных
$mixed = [5, '10', '3.5', 'text'];
echo array_sum($mixed);
18.5
Ассоциативный массив
$assoc = ['a' => 1, 'b' => 2, 'c' => 3];
echo array_sum($assoc);
6

Похожие функции в PHP

array_product()

Вычисляет произведение значений массива. Подходит для умножения элементов вместо сложения.

Позволяет применять пользовательскую callback-функцию для редукции массива к одному значению. Более гибкая альтернатива для сложных операций.

array_map() + array_sum()

Комбинация для предварительной обработки значений перед суммированием.

Типичные ошибки

Передача не массива
echo array_sum('123');
0
Потеря точности при больших числах
$large = [PHP_INT_MAX, 1];
echo array_sum($large);
Результат может быть непредсказуем из-за переполнения
Некорректная обработка строк
$items = ['10 apples', '5 oranges'];
echo array_sum($items);
15 (только первое число из каждой строки)

Изменения в версиях PHP

PHP 8.0

Улучшена обработка типов: при передаче не массива генерируется предупреждение, но функция пытается преобразовать значение.

PHP 7.0+

Оптимизация внутренней реализации для повышения скорости работы с большими массивами.

Расширенные примеры

Суммирование многомерного массива
Пример php
$data = [[1, 2], [3, 4], [5]];
$sum = array_sum(array_merge(...$data));
echo $sum;
15
Фильтрация перед суммированием
Пример php
$values = [10, 'text', 20, null, 30];
$filtered = array_filter($values, 'is_numeric');
echo array_sum($filtered);
60
Сумма с условием
Пример php
$items = [
    ['price' => 100, 'qty' => 2],
    ['price' => 200, 'qty' => 1]
];
$total = array_sum(array_column($items, 'price'));
echo $total;
300
Рекурсивное суммирование
Пример php
function recursive_sum($array) {
    $sum = 0;
    array_walk_recursive($array, function($value) use (&$sum) {
        if (is_numeric($value)) $sum += $value;
    });
    return $sum;
}

$nested = [1, [2, [3, 4]], 5];
echo recursive_sum($nested);
15
Работа с научными обозначениями
Пример php
$scientific = [1.2e3, 3.5e2];
echo array_sum($scientific);
1550
Статистические расчеты
Пример php
$temperatures = [22.5, 23.1, 21.8, 24.3, 22.9];
$average = array_sum($temperatures) / count($temperatures);
echo round($average, 2);
22.92

Альтернативы в других языках

Array sum в Python

numbers = [1, 2, 3, 4, 5]
result = sum(numbers)
print(result)
15

Array sum в Javascript

const numbers = [1, 2, 3, 4, 5];
const result = numbers.reduce((acc, val) => acc + val, 0);
console.log(result);
15

Array sum в MySQL

SELECT SUM(column_name) FROM table_name;
Основные отличия

В Python функция sum() работает аналогично, но строже относится к типам данных. JavaScript требует использования reduce() для массивов. SQL операция выполняется на уровне базы данных.

PHP array_sum function comments

En
Array sum Calculate the sum of values in an array