网站地图    收藏   

主页 > php专栏 > php数组查询 >

php中计算二维数组平均值/分组平均值实例 - php数

来源:自学PHP网    时间:2014-11-25 21:16 作者: 阅读:

[导读] 计算数组平均值,二维数组平均值计算,分组计算平均值,代码如下:$array=array(array( 39;class 39;= 39;a 39;, 39;value 39;=3),array( 39;class 39;= 39;a 39;, 39;value 39;=4),ar...

php中计算二维数组平均值/分组平均值实例

计算数组平均值,二维数组平均值计算,分组计算平均值,代码如下:

  1. $array = array(  
  2.     array('class' => 'a''value' => 3),  
  3.     array('class' => 'a''value' => 4),  
  4.     array('class' => 'b''value' => 5),  
  5.     array('class' => 'b''value' => 6)  

这样的数组可分别以 class键值分组计算平均值,也可以单独计算总的平均值,用法如下:

  1. array_avg($array'class');//返回二维数组  
  2. array_avg($array);//返回一维数组 
  3. // 计算平均值    返回一维数组  
  4. // 参数$avgby 按照指定字段算平均值  返回二维数组  
  5. private function array_avg($array$avgby = NULL) {  
  6.     $array_avg = array ();  
  7.     $number = count ( $array );  
  8.     foreach ( $array as $key => $value ) {  
  9.         if ($avgby) {  
  10.             $avg_key = $value[$avgby];  
  11.             $array_avg[$avg_key]['count'] ++;  
  12.             foreach ( $value as $k => $v ) {  
  13.                 $array_avg[$avg_key][$k] += $v;  
  14.             }  
  15.         } else {  
  16.             foreach ( $value as $k => $v ) {  
  17.                 $array_avg[$k] += $v;  
  18.             }  
  19.         }  
  20.     }  
  21.     $array = array ();  
  22.     foreach ( $array_avg as $key => $value ) {  
  23.         if ($avgby) {  
  24.             foreach ( $value as $k => $v ) {  
  25.                 $array[$key][$k] = $v / $value['count'];  
  26.             }  
  27.         } else {  
  28.             $array[$key] = $value / $number;  
  29.         }  
  30.     }  
  31.     return $array;  

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论