As a powerful programming language, PHP provides a wealth of array operation functions to meet daily programming needs, among which calculating the average of an array is one of the more basic operations. This article will introduce several methods to obtain the average of an array.
The array_sum() function is used to calculate the sum of the elements in the array, while the count() function is used to calculate the number of elements in the array number. By combining these two functions, you can find the average of an array.
The sample code is as follows:
function average_1($arr){ $sum = array_sum($arr); $count = count($arr); $average = $sum / $count; return $average; } $arr = [1, 2, 3, 4, 5]; echo average_1($arr); // 输出:3
In addition to using functions, we can also use foreach loop to traverse the array and obtain the sum and individual elements number, and finally calculate the average value through division.
The sample code is as follows:
function average_2($arr){ $sum = 0; $count = 0; foreach($arr as $value){ $sum += $value; $count++; } $average = $sum / $count; return $average; } $arr = [1, 2, 3, 4, 5]; echo average_2($arr); // 输出:3
The array_reduce() function can also be used to find the sum of the elements in an array. This function requires two parameters, the first parameter is the array to be processed, and the second parameter is a function in which the element addition operation can be implemented.
The sample code is as follows:
function average_3($arr){ $sum = array_reduce($arr, function($carry, $value){ return $carry + $value; }); $count = count($arr); $average = $sum / $count; return $average; } $arr = [1, 2, 3, 4, 5]; echo average_3($arr); // 输出:3
Although it is not recommended, the eval() function can be used to calculate in some special cases Array average. The specific operation is to convert the array into a string and add the corresponding calculation expression, and then dynamically execute the expression through the eval() function to obtain the result.
The sample code is as follows:
function average_4($arr){ $str = implode("+", $arr); $eval_str = "return ($str)/" . count($arr) . ";"; $average = eval($eval_str); return $average; } $arr = [1, 2, 3, 4, 5]; echo average_4($arr); // 输出:3
It should be noted that because the execution environment of the eval() function is too flexible, there are some security risks, so try to avoid using this function in actual development.
To sum up, calculating the average of an array is a basic problem in PHP array operations. We can use a variety of methods to solve this problem. For developers, which method to choose depends on the specific application scenario and development needs.
The above is the detailed content of How to find the average of an array in php. For more information, please follow other related articles on the PHP Chinese website!