PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PHP Sort数组关节位置大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一系列的球员,每人都有很多积分.

我可以使用自定义usort函数轻松按点的顺序对数组进行排序.

但是,当两个玩家的积分相同时,我需要将其排名为列表中相同的获胜位置.

例如.

>尼克-25
>汤姆-18
>克里斯-18
戴夫-16
>詹姆斯-8

在这种情况下,我需要的数据将是

>尼克-第一名
>汤姆-(联合)第二名
克里斯(第二)
>戴夫第三
>詹姆斯第四

因此,将得分相等的玩家指定为相同的排名位置.

计算这些位置的最佳方法是什么?

谢谢!

解决方法:

这将为您提供所需的额外修正:如果您在位置2中有两名玩家,那么下一位玩家应该在位置4中.如果您不希望此额外修正,则将$count移到位置.进入if语句.

$count = 0;
$position = 0;
$last_score = -1;

foreach ($players as $player)
{
    $count++;

    if ($last_score !== $player->score)
    {
        $position = $count;
    }

    $player->position = $position;
    $last_score = $player->score;
}

大佬总结

以上是大佬教程为你收集整理的PHP Sort数组关节位置全部内容,希望文章能够帮你解决PHP Sort数组关节位置所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: