Перейти к содержимому

Функция array_sum() в PHP: как вычислить сумму элементов массива

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

Что такое функция суммы массива в PHP?

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

Вот базовый синтаксис функции array_sum():

Синтаксис array_sum() в PHP

php
array_sum(array $array): int|float

Как видите, функция принимает массив в качестве параметра и возвращает значение типа int|float, которое представляет собой сумму всех значений в массиве.

Как использовать функцию суммы массива в PHP

Использование функции array_sum() в PHP довольно просто. Вам нужно лишь передать массив в функцию, и она вернет сумму всех его значений.

Вот пример:

Пример использования функции array_sum() в PHP

php
<?php

$numbers = array(1, 2, 3, 4, 5);
$sum = array_sum($numbers);

echo "The sum of the numbers is: " . $sum;

?>

В этом примере мы определяем массив $numbers, содержащий пять целых чисел. Передаем его в array_sum(), которая возвращает общую сумму. Наконец, выводим результат с помощью echo.

Примечание: array_sum() автоматически преобразует значения в числа. Строки, содержащие числовые символы, преобразуются в числа, а нечисловые строки рассматриваются как 0.

Результат выполнения этого кода будет следующим:


console
The sum of the numbers is: 15

Примеры использования функции суммы массива в PHP на практике

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

Пример 1: Подсчет общей стоимости товаров в корзине

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

Вот пример:

Пример 1 на PHP: Подсчет общей стоимости с помощью функции array_sum

php
<?php

$cart = array(
    array("name" => "Product 1", "price" => 10),
    array("name" => "Product 2", "price" => 20),
    array("name" => "Product 3", "price" => 30)
);

$prices = array_column($cart, "price");
$total_price = array_sum($prices);

echo "The total price of the items in the cart is: $" . $total_price;

?>

Здесь мы определяем массив $cart с данными о товарах. Извлекаем цены с помощью array_column(), суммируем их с помощью array_sum() и выводим результат.

Результат выполнения этого кода будет следующим:


console
The total price of the items in the cart is: $60

Пример 2: Подсчет среднего балла

В этом примере мы определяем массив $scores с пятью оценками студентов. Мы вычисляем среднее значение, деля сумму оценок на количество элементов, а затем выводим результат.

Вычисление среднего значения в PHP с помощью array_sum

php
<?php

$scores = array(80, 90, 70, 85, 95);
$average_score = array_sum($scores) / count($scores);

echo "The average score of the students is: " . $average_score;

?>

Результат выполнения этого кода будет следующим:


console
The average score of the students is: 84

Лучшие практики использования функции суммы массива в PHP

Хотя функция array_sum() в PHP довольно проста в использовании, есть несколько рекомендаций, которые следует учитывать, чтобы использовать ее правильно и эффективно.

1. Проверка типа входных данных на массив

Перед использованием функции array_sum() важно убедиться, что входные данные действительно являются массивом. В PHP 8+ передача значения, не являющегося массивом, вызывает исключение TypeError вместо вывода предупреждения.

Чтобы проверить, является ли переменная массивом, можно использовать функцию is_array(). Вот пример:

Проверка входных данных на массив в PHP

php
if (is_array($numbers)) {
    $sum = array_sum($numbers);
} else {
    // handle the error
}

Мы проверяем переменную с помощью is_array() перед вызовом array_sum(). Если это не массив, мы соответствующим образом обрабатываем ошибку.

2. Обработка пустых массивов

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

Например, если вы вычисляете средний балл студентов в классе, а студентов нет, вам может потребоваться вывести сообщение о том, что нечего усреднять.

Обработка пустых массивов при использовании array_sum в PHP

php
if (empty($scores)) {
    echo "There are no scores to average.";
} else {
    $average_score = array_sum($scores) / count($scores);
    echo "The average score of the students is: " . $average_score;
}

Мы проверяем, пуст ли $scores, с помощью функции empty(). Если он пуст, выводим сообщение; в противном случае вычисляем и выводим среднее значение.

Заключение

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

В этой статье мы предоставили подробное руководство по использованию функции array_sum() в PHP, включая примеры из реальной практики и лучшие практики. Следуя этим рекомендациям, вы сможете правильно и эффективно использовать функцию, а также создавать более надежные приложения на PHP.

Practice

Какова цель функции array_sum() в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.