【发布时间】:2020-11-22 12:13:19
【问题描述】:
我想对 php 对象数组进行排序,在排序时我必须考虑两个不同的键,如果两个用户的值相同,则考虑这些值的另一个键。
给定数组示例
[{'id':'1','total_number':'90','previous_number':'75'},
{'id':'2','total_number':'80','previous_number':'91'},
{'id':'3','total_number':'80','previous_number':'84'},
{'id':'4','total_number':'80','previous_number':'96'},
{'id':'5','total_number':'95','previous_number':'80'}
]
结果数组:
[{'id':'5','total_number':'95','previous_number':'80'},
{'id':'1','total_number':'90','previous_number':'75'},
{'id':'4','total_number':'80','previous_number':'96'},
{'id':'2','total_number':'80','previous_number':'91'},
{'id':'3','total_number':'80','previous_number':'84'}
]
【问题讨论】:
-
修改结果如果我必须在同一个数组中添加排名,那么我该如何添加。如果两个用户的总数相同,那么排名也应该相同。你能提出一些逻辑吗?或编写一组代码。 –
expected result - [{'id':'5','total_number':'95','previous_number':'80,'rank':'1''}, {'id':'1','total_number':'90','previous_number':'75','rank':'2'}, {'id':'4','total_number':'80','previous_number':'96','rank':'3'}, {'id':'2','total_number':'80','previous_number':'91','rank':'3'}, {'id':'3','total_number':'80','previous_number':'84','rank':'3'} ]
标签: php arrays sorting quicksort ranking