##PHP对二维数组里面的多字段进行排序
<?php
$data = [
["sort" => "99", 'site_sort' => "9"],
["sort" => "99", 'site_sort' => "20"],
["sort" => "9", 'site_sort' => "80"],
["sort" => "99", 'site_sort' => "80"],
["sort" => "99", 'site_sort' => "86"],
["sort" => "99", 'site_sort' => "130"],
];
// $dataLen = count($data);
// for ($i=0; $i < $dataLen; $i++) {
// for ($j=$i + 1; $j < $dataLen; $j++) {
// if ($data[$i]["sort"] > $data[$j]["sort"]) {
// $tmp = $data[$i];
// $data[$i] = $data[$j];
// $data[$j] = $tmp;
// }else if (($data[$i]["sort"] == $data[$j]["sort"]) && ($data[$i]["site_sort"] > $data[$j]["site_sort"])) {
// $tmp = $data[$i];
// $data[$i] = $data[$j];
// $data[$j] = $tmp;
// }
// }
// }
// echo json_encode($data);
// 以上为自己写的算法
// 以下为PHP自带函数处理
array_multisort(array_column($data, 'sort'),SORT_ASC, array_column($data, 'site_sort'),SORT_ASC, $data);
echo json_encode($data);
echo出来的数据
[
{
"sort": "9",
"site_sort": "80"
},
{
"sort": "99",
"site_sort": "9"
},
{
"sort": "99",
"site_sort": "20"
},
{
"sort": "99",
"site_sort": "80"
},
{
"sort": "99",
"site_sort": "86"
},
{
"sort": "99",
"site_sort": "130"
}
]