读书人

php二维数组排序有关问题 求帮忙排序

发布时间: 2012-03-26 15:46:55 作者: rapoo

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)<key($n)) : current($m)<current($n);'));print_r($a);/**(    [0] => Array        (            [1] => 15        )    [1] => Array        (            [3] => 9        )    [2] => Array        (            [2] => 9        )    [3] => Array        (            [6] => 5        )    [4] => Array        (            [2] => 4        ))/**/ 

读书人网 >PHP

热点推荐