Home  >  Article  >  Backend Development  >  Sum function in php array

Sum function in php array

WBOY
WBOYOriginal
2023-05-06 13:07:07490browse

In PHP, array is a very useful and common data structure. The data stored in the array can be numbers, strings, Boolean values, or even other arrays. On many occasions, we need to perform some calculations on the data in the array, such as summing, averaging, etc. This article will introduce the array sum function in PHP in detail to help readers better understand and use this function.

1. Basic concepts of PHP arrays

In PHP, arrays can be defined using the keyword array or square brackets. The sample code is as follows:

// 使用array关键字定义数组
$fruits = array("apple", "banana", "cherry");
// 使用方括号定义数组
$cars = ["Volvo", "BMW", "Toyota"];

The above code defines two arrays $fruits and $cars respectively, and assigns values ​​to them respectively. As can be seen, the elements of an array can be indexed by strings or numbers, and a mix of these can be used. As follows:

// 索引和关联混合使用的数组
$person = array("name" => "John", "age" => 30, "hobby" => ["reading", "music"]);

The above array $person not only uses the key-value pair form of an associative array, but also contains an index array. In addition, array elements can also be other arrays. For example, "hobby" in the above example is a nested array.

2. PHP array sum function

In PHP, the function that finds the sum of all elements in an array is called array_sum(). This function accepts an array as argument and returns the sum of all elements in the array. The following is a sample code for the array_sum() function:

$numbers = [1, 2, 3, 4, 5];
$sum = array_sum($numbers);
echo "数组$numbers的元素和是:$sum";

The above code defines an array $numbers, sums its elements, assigns the result to the variable $sum, and outputs the result. Running the above code, the output result is:

数组[1, 2, 3, 4, 5]的元素和是:15

array_sum() function can also be used for associative arrays and nested arrays. For associative arrays, the function ignores the keys in the key-value pairs and only sums the values. As an example:

$prices = ["apple" => 10, "banana" => 20, "cherry" => 30];
$sum = array_sum($prices);
echo "水果的总价是:$sum";

The above code defines an associative array $prices, where the key represents the name of the fruit and the value represents the unit price. Use the array_sum() function to add all element values ​​in the $prices array to get the total price of the fruit. The output result is as follows:

水果的总价是:60

For nested arrays, you can use recursive summation. The sample code is as follows:

$grades = [
    "John" => ["math" => 90, "english" => 80, "science" => 95],
    "Mary" => ["math" => 85, "english" => 90, "science" => 92],
    "Mike" => ["math" => 92, "english" => 87, "science" => 89],
];

function sum_grades($grades) {
    $sum = 0;
    foreach($grades as $grade) {
        if(is_array($grade)) {
            $sum += sum_grades($grade);
        } else {
            $sum += $grade;
        }
    }
    return $sum;
}

$total = sum_grades($grades);
echo "总成绩是:$total";

The above code defines a nested array $grades, which represents the grades of three students in three subjects. A recursive function sum_grades() is defined to sum all elements in the $grades array and finally output the total score. Run the above code, and the output result is:

总成绩是:941

3. Conclusion

This article introduces the basic concepts of arrays in PHP and the use of the summation function array_sum(). Through study and practice, readers should have mastered the basic usage of the array sum function in PHP. In actual projects, the summation function is one of the most widely used array functions. I hope this article can be helpful to PHP beginners.

The above is the detailed content of Sum function in php array. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn