php 中的排名错误仅显示一级

问题描述 投票:0回答:1
$avr = intval($result->markk / 11); 
$numbers = array($avr);
rsort($numbers);

$arr = $arr1 = array();
$i = $rank = 1;

foreach ($numbers as $key => $value) {

    $arr[$value][] = $value;
}

foreach ($arr as $key => $value) {
    foreach ($value as $key1 => $value1) {
        echo $value1 . "- rank " . $rank . "<br>";
        $rank++; // Increment the rank
    }
    $i++;
}

上面的代码只显示了一个等级,我如何解决这个问题

rank 1
rank 2
rank 2
rank 4
php mysqli phpmyadmin rank mysqlimport
1个回答
0
投票

您需要将所有学生的平均分放入

$numbers
,而不仅仅是一个平均分。

$numbers = [];
foreach ($results as $result) {
    $numbers[] = round($result->markk / 11);
}
© www.soinside.com 2019 - 2024. All rights reserved.