* @access public * @param array, all the votes * @return int */ function waverage($votes = array()){ $votesPerValue = array(); $weight = 10; foreach($votes as $value){ if(!array_key_exists($value, $votesPerValue)){ $votesPerValue[$value] = 1; } else{ $votesPerValue[$value]++; } } $sum = 0; foreach($votesPerValue as $key => $value){ $sum += pow($key,$weight)*$value; } $waverage = pow(($sum/sizeof($votes)),1/$weight); return $waverage; } /** * average * * Average * * @author Kiensan Chea * @access public * @param array, all the votes * @return int */ function average($votes = array()){ $sum = 0; foreach($votes as $value){ $sum += $value; } $average = $sum/count($votes); return $average; } $votes = array(1,10,10,10); print_r($votes); echo '
waverage: '.waverage($votes); echo '
average: '.average($votes); ?>