比如有二维数组$worker_data如下:
Array
([0] => Array
(
[realname] => 李文浩
[project] => 跆拳道
[count] => 0
[money] => 0
[ev_count] => 1
[ev_money] => 100.00
[sort] => 100
)
[1] => Array
(
[realname] => 李成
[project] => 跆拳道
[count] => 0
[money] => 0
[ev_count] => 1
[ev_money] => 126.00
[sort] => 26
)
[2] => Array
(
[realname] => 江梦
[project] => 轮滑
[count] => 0
[money] => 0
[ev_count] => 1
[ev_money] => 126.00
[sort] => 120
)
[3].....
需求:根据其中的sort值让$worker_data递减排序。
可使用如下方法:
usort($worker_data,function ($x,$y){
return bccomp($x['sort'],$y['sort']);
});
如果想递增排序,把bccomp()的参数换个位置就行了~~
如果是排序字段是project,它是字符串,改用strcasecmp(),如下:
usort($worker_data, function($x, $y) {
return strcasecmp($x['project'],$y['project']);
});
另外浮点型也用strcasecmp()排序
本文介绍如何使用PHP内置函数usort()对多维数组进行自定义排序。通过具体示例展示了如何根据数值和字符串字段对数组元素进行递增或递减排序。
748

被折叠的 条评论
为什么被折叠?



