PHP array_multisort – 如何保持键值?
发布时间:2020-05-25 08:33:10 所属栏目:PHP 来源:互联网
导读:参见英文答案 array_multisort with maintaining numeric index association 2个 如何对多维数组进行深度排序并保留其键? $array = [ 2 = [ title = Flower, order = 3
参见英文答案 >
array_multisort with maintaining numeric index association 2个
$array = [ '2' => [ 'title' => 'Flower','order' => 3 ],'3' => [ 'title' => 'Rock','order' => 1 ],'4' => [ 'title' => 'Grass','order' => 2 ] ]; foreach ($array as $key => $row) { $items[$key] = $row['order']; } array_multisort($items,SORT_DESC,$array); print_r($array); 结果: Array ( [0] => Array ( [title] => Flower [order] => 3 ) [1] => Array ( [title] => Grass [order] => 2 ) [2] => Array ( [title] => Rock [order] => 1 ) ) 我所追求的是: Array ( [2] => Array ( [title] => Flower [order] => 3 ) [4] => Array ( [title] => Grass [order] => 2 ) [3] => Array ( [title] => Rock [order] => 1 ) ) 有任何想法吗? 也许这就是你在找什么: Online Example保留数组键,使用order列排序并再次组合它们. $keys = array_keys($array); array_multisort( array_column($array,'order'),SORT_NUMERIC,$array,$keys ); $array = array_combine($keys,$array); echo '<pre>'; print_r($array); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |