【问题标题】:how can i sort 2 dimensional array based on index array in PHP?如何根据 PHP 中的索引数组对二维数组进行排序?
【发布时间】:2017-12-09 16:16:02
【问题描述】:

我在 PHP 中有一个这样的数组:

数组 ( [0] => 数组 ( [0] => 黑色 [2] => 棕色 [1] => 红色 )

[1] => Array
    (
        [2] => car
        [0] => bicycle
        [1] => motorcycle
    )

)

我如何得到数组,像这样:

结果:

数组 ( [0] => 数组 ( [0] => 黑色 [1] => 红色 [2] => 棕色 )

[1] => Array
    (

        [0] => bicycle
        [1] => motorcycle
        [2] => car
    )

)

谢谢

【问题讨论】:

    标签: php arrays sorting multidimensional-array


    【解决方案1】:

    也许你可以这样尝试:

    $arr=array(
        array(2=>'red',1=>'green',3=>'black'),
        array(1=>'pink',3=>'blue',2=>'yellow')
    );
    array_walk( $arr, function(&$v,$k){
        ksort($v);
    });
    echo '<pre>', print_r( $arr, true ), '</pre>';
    

    输出:

    Array
    (
        [0] => Array
            (
                [1] => green
                [2] => red
                [3] => black
            )
    
        [1] => Array
            (
                [1] => pink
                [2] => yellow
                [3] => blue
            )
    
    )
    

    【讨论】:

      【解决方案2】:

      使用 krsort() 函数根据键对关联数组进行降序排序。

      【讨论】:

      • ksort只存在于一维数组中,如何在多维数组上实现ksort?谢谢
      • 看看这个问题的答案,也许它会帮助你link
      猜你喜欢
      • 1970-01-01
      • 2011-11-17
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多