php 实现带默认值的多排序关键字 的多维数组 排序


array_multisort


$priceList = [
"de_price" => ["price" => 15],
"fr_price" => ["price" => 68],
"cz_price" => ["price" => 67]
];


private function sortListExu($priceList)
{
$sortList = [];
foreach ($priceList as $k => $v) {
if (!in_array($k, ["de_price", "fr_price", "cz_price"])) {
continue;
}
switch ($k) {
case "fr_price":
$sortList[$k]["sort"] = 10;
break;
case "de_price":
$sortList[$k]["sort"] = 8;
break;
case "cz_price":
$sortList[$k]["sort"] = 6;
break;
}

$sortList[$k]["price"] = $v;
$price[$k] = $sortList[$k]["price"];
$sort[$k] = $sortList[$k]["sort"];
}

if (count($sortList)){
array_multisort($price, SORT_ASC, $sort, SORT_DESC, $sortList);
}

return $sortList;
}

 

posted @ 2023-02-27 16:28  给香菜送点香菜  阅读(14)  评论(0)    收藏  举报