PHP按照二维数组元素的值进行正序和倒序排序的实现方法
比如我有数组如下:<?php
// 你的原始数组
$admins = [
[
'id'=>1,
'bindstatus'=>1
],
[
'id'=>2,
'bindstatus'=>0
]
];
// ========== 核心排序代码 ==========
// 1. 先把 bindstatus 列单独提取出来
$bindStatus = array_column($admins, 'bindstatus');
// 2. 按 bindstatus 正序排序(SORT_ASC = 正序)
array_multisort($bindStatus, SORT_ASC, $admins);
// 输出排序结果
print_r($admins);
?>最终print_r($admins)后的结果如下:
Array
(
=> Array
(
=> 2
=> 0
)
=> Array
(
=> 1
=> 1
)
)成功实现:bindstatus 0 排前面,1 排后面。
代码解释(超简单)
array_column($admins, 'bindstatus')
把数组里所有的 bindstatus 值提取出来,得到:
array_multisort(排序依据, 排序方式, 原数组)
SORT_ASC = 正序(从小到大)
SORT_DESC = 倒序(从大到小)
array_multisort($bindStatus, SORT_DESC, $admins);
页:
[1]