1
我正在为评价的每个评论和4个字段(价格,质量,支持和交付)评级平均值。从以下函数返回错误的平均值。它应该返回2,但返回1.
function review_rating_average($pid,$cid,$rid) {
$query = mysqli_query("SELECT rate_price, rate_quality, rate_support, rate_delivery FROM reviews WHERE (product_id = $pid and client_id = $cid and review_id = $rid)");
$array = array();
foreach($query as $row) {
$array[1] = 2;
$array[2] = 1;
$array[3] = 4;
$array[4] = 3;
}
$result = implode(", ", $array);
$stars = array($result);
foreach ($stars as $star) {
$rating[] = $star;
}
$average = array_sum($rating)/count($rating);
return $average;
}
我不擅长阵列的东西可以请一些代码解释。 –
我使它成为现在少的代码并且它可以工作, '$ arrays = $ query; \t foreach($ arrays as $ array){ \t \t $ rating [0] = $ array ['rating_price']; \t \t $ rating [1] = $ array ['rating_quality']; \t \t $ rating [2] = $ array ['rating_support']; \t \t $ rating [3] = $ array ['rating_delivery']; \t} \t $ average = ceil(array_sum($ rating)/ count($ rating)); \t return $ average;' –
呃......当然。或者你可以做'$ average = array_sum($ query [0])/ count($ query [0]);'...... –