Sorting an array using "points"


Sorting an array using "points"

我需要对数组进行排序以按点进行排名,但我无法使其正常工作。。

function cmp($a, $b)
{
    return strcmp($a->points, $b->points);
}
usort($teamList, "cmp");  
foreach($teamList as $r)
{
    echo $r->name . " " . $r->points. "<br>";
}

我用这个代码得到了这个:随机团队*-100随机团队*-12随机团队*-12.5随机团队*-15随机团队*-15.5随机团队*-15.5

  • 每个随机团队都是不同的团队

您将项目作为字符串进行比较。在字符串项中,-12.5小于-15(因为2小于5,并且直到那里的所有值都相等

相反,只需使用return $a->points - $b->points;