Home >Backend Development >PHP Problem >How to sum two arrays in php? A brief analysis of two methods
PHP is a very popular programming language that is widely used to develop web applications. Among them, arrays are one of the very important data types in PHP. Many times we need to perform some operations on arrays, such as summation.
In PHP, finding the sum of two arrays can be achieved in the following two ways.
Method 1: Use a loop to traverse the arrays for summation
This is a relatively simple method. You only need to use a for loop to traverse the arrays, and then accumulate the elements at corresponding positions in the two arrays. Finally, Get a new array in which each element is the sum of the corresponding elements of the two arrays.
The sample code is as follows:
$arr1 = [1, 2, 3, 4, 5]; $arr2 = [6, 7, 8, 9, 10]; // 检查两个数组长度是否相等 if (count($arr1) !== count($arr2)) { throw new Exception('数组长度不一致'); } $sum = []; for ($i = 0; $i < count($arr1); $i++) { $sum[$i] = $arr1[$i] + $arr2[$i]; } print_r($sum); // 输出[7, 9, 11, 13, 15]
In the above code, we first check whether the lengths of the two arrays are equal, and if they are not equal, an exception is thrown. Then use a for loop to traverse the array, accumulate the elements at the corresponding positions, and finally get a new array $sum.
Method 2: Use array_map function to sum
Another method is to use the array_map function provided by PHP. The array_map function can accept multiple arrays as parameters and can change the corresponding positions of these arrays. The elements are passed to the callback function for processing.
The sample code is as follows:
$arr1 = [1, 2, 3, 4, 5]; $arr2 = [6, 7, 8, 9, 10]; // 检查两个数组长度是否相等 if (count($arr1) !== count($arr2)) { throw new Exception('数组长度不一致'); } $sum = array_map(function ($a, $b) { return $a + $b; }, $arr1, $arr2); print_r($sum); // 输出[7, 9, 11, 13, 15]
In the above code, we first check whether the lengths of the two arrays are equal, and then directly use the array_map function to pass the two arrays as parameters and pass a Callback function, this callback function will accept two parameters, representing the elements at the corresponding positions of the two arrays, and finally return the sum of these two elements. Ultimately, the array_map function will return a new array $sum.
Summary:
The above are two methods for finding the sum of two arrays. Both methods can achieve the same function. Which method to use can be completely based on personal reality. It needs to be decided. For example, if the array length is small, you can use the first method. If the array length is large, it may be recommended to use the second method to ensure code efficiency. No matter which method is used, one thing we need to pay attention to is to ensure that the lengths of the two arrays are equal, otherwise an error will occur.
The above is the detailed content of How to sum two arrays in php? A brief analysis of two methods. For more information, please follow other related articles on the PHP Chinese website!