php二維數組排序問題 求幫忙排序
現有一數組
PHP code
$a=array( 0=>array(3=>9), 1=>array(2=>9), 2=>array(6=>5), 3=>array(1=>15), 4=>array(2=>4),);
需要排序變為下面這樣:
PHP code
$b=array( 0=>array(1=>15), 1=>array(3=>9), 2=>array(2=>9), 3=>array(6=>5), 4=>array(2=>4), );
wish you all the best!
------解決方案--------------------
PHP code
$a=array( 0=>array(3=>9), 1=>array(2=>9), 2=>array(6=>5), 3=>array(1=>15), 4=>array(2=>4),);foreach($a as $v) { $r[] = current($v); $k[] = key($v);}array_multisort($r, SORT_DESC, $k, SORT_DESC, $a);print_r($a);
------解決方案--------------------
探討
PHP code
$a=array(
0=>array(3=>9),
1=>array(2=>9),
2=>array(6=>5),
3=>array(1=>15),
4=>array(2=>4),
);
foreach($a as $v) {
$r[] = current($v);
$k[] = key($v);
}
……
------解決方案--------------------
受教了
------解決方案--------------------
我的部落格裡正好有一個,相比起來1樓的就是小兒科
------解決方案--------------------
不換藥
PHP code
……usort($a, create_function('$m, $n', 'return current($m)==current($n) ? (key($m)==key($n) ? 0 : key($m) Array ( [1] => 15 ) [1] => Array ( [3] => 9 ) [2] => Array ( [2] => 9 ) [3] => Array ( [6] => 5 ) [4] => Array ( [2] => 4 ))/**/