PHP数组中子键的平均值
如何将登录时间相互添加(,然后找到它们的平均值?循环并获得它非常简单PHP数组中子键的平均值,php,arrays,associative-array,Php,Arrays,Associative Array,如何将登录时间相互添加(,然后找到它们的平均值?循环并获得它非常简单 Array ( [JohnDoe] => Array ( [id] => 23 [name] => JohnDoe [logintimes] => 30 ) [JaneDoe] => Array ( [id] => 26 [name] => JaneDoe [logintimes] => 9 ) [Smith] => Array ( [i
Array (
[JohnDoe] => Array (
[id] => 23
[name] => JohnDoe
[logintimes] => 30
)
[JaneDoe] => Array (
[id] => 26
[name] => JaneDoe
[logintimes] => 9
)
[Smith] => Array (
[id] => 35
[name] => Smith
[logintimes] => 9
)
)
循环并得到它非常简单
Array (
[JohnDoe] => Array (
[id] => 23
[name] => JohnDoe
[logintimes] => 30
)
[JaneDoe] => Array (
[id] => 26
[name] => JaneDoe
[logintimes] => 9
)
[Smith] => Array (
[id] => 35
[name] => Smith
[logintimes] => 9
)
)
您必须在数组中循环,并使用子数组引用来合计
logintimes
值。完成后,只需将logintimes
的总数除以数组项的计数即可
示例:
$counter = 0;
$total = 0;
foreach($array as $row) {
$counter++;
$total += $row['logintimes'];
}
echo $total / $counter;
您必须在数组中循环,并使用子数组引用来合计登录时间
值。完成后,只需将logintimes
的总数除以数组项的计数即可
示例:
$counter = 0;
$total = 0;
foreach($array as $row) {
$counter++;
$total += $row['logintimes'];
}
echo $total / $counter;
您也可以使用和:
您也可以使用和执行以下操作:
为完整起见,PHP>=5.5.0:
$sum = array_sum(array_map(function($item) {
return $item['logintimes'];
}, $your_array));
echo $sum / count ($your_array);
为完整起见,PHP>=5.5.0:
$sum = array_sum(array_map(function($item) {
return $item['logintimes'];
}, $your_array));
echo $sum / count ($your_array);
认为此解决方案应该更有效(PHP 5.5+):
认为此解决方案应该更高效(PHP 5.5+):