Home >Backend Development >PHP Problem >How to sum three-dimensional arrays in php
In PHP, array is a very important data type that can be used to save a list of values. In order to process data more flexibly, it is sometimes necessary to use three-dimensional arrays. However, processing three-dimensional arrays may be difficult. In this article, we will discuss how to sum three-dimensional arrays in PHP.
First, we need to understand the structure of the three-dimensional array. In PHP, a three-dimensional array is composed of multiple two-dimensional arrays. Each two-dimensional array is composed of multiple one-dimensional arrays. Therefore, the structure of a three-dimensional array can be expressed as:
array( array( array(), array(), ... ), array( array(), array(), ... ), ... )
In practical applications, three-dimensional arrays are usually used to store data containing multiple attributes, such as a student's performance record. At this time, the three-dimensional array can be expressed as:
array( array( array('name' => 'Tom', 'math' => 80, 'english' => 90), array('name' => 'Jack', 'math' => 85, 'english' => 95), ... ), array( array('name' => 'Mary', 'math' => 90, 'english' => 95), array('name' => 'John', 'math' => 75, 'english' => 80), ... ), ... )
Next, we will introduce two methods to perform sum operations on PHP three-dimensional arrays.
Method 1: Use a loop to traverse the array
The most direct method is to use a loop to traverse the array, and then add the value of each element. The specific steps are as follows:
The sample code is as follows:
$sum = 0; foreach ($array as $arr2) { foreach ($arr2 as $arr1) { for ($i = 0; $i < count($arr1); $i++) { $sum += $arr1[$i]; } } } echo $sum;
In the above code, $array represents the three-dimensional array to be summed, and $sum represents the summation result. It should be noted that since each element in the three-dimensional array is a one-dimensional array, you need to use the count function to obtain the number of elements.
Method 2: Recursively traverse the array
In addition to using a loop to traverse the array, you can also use recursive traversal of the array to implement the sum operation. The specific steps are as follows:
The sample code is as follows:
function sum_array($arr, $sum = 0) { foreach ($arr as $value) { if (is_array($value)) { $sum = sum_array($value, $sum); } else { $sum += $value; } } return $sum; } echo sum_array($array);
In the above code, $array represents the three-dimensional array to be summed. This method implements recursive traversal of the array and adds each element to obtain the summation result.
Summary
This article introduces two methods to sum three-dimensional arrays in PHP. The first method is to use a loop to traverse the array and add the values of each element to get the summation result; the second method is to use recursion to traverse the array and add each element to get the summation result. Both methods have their own advantages and disadvantages, and you can choose the appropriate method to implement the summation operation of three-dimensional arrays according to the actual situation.
The above is the detailed content of How to sum three-dimensional arrays in php. For more information, please follow other related articles on the PHP Chinese website!