欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-04-29 12:00:13
...
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
        )

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

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频