首页 > 解决方案 > 在 PHP 中对数组进行排序

问题描述

请求您在 PHP 中对数组进行排序的帮助,如下所示,尝试了所有这些函数 ksort、usort、arsort、krsort 似乎没有任何工作,任何帮助将不胜感激。

原始数组

Array
(
    [serv1-DB] => Array
        (
            [2019-11-22] => 0
            [2019-11-23] => 0
            [2019-11-24] => 0
            [2019-11-25] => 1
            [2019-11-26] => 3
            [2019-11-27] => 3
            [2019-11-28] => 3
            [2019-11-29] => 3
        )

    [ser2-DB] => Array
        (
            [2019-11-25] => 0
            [2019-11-24] => 0
            [2019-11-22] => 0
            [2019-11-23] => 0
            [2019-11-26] => 3
            [2019-11-27] => 3
            [2019-11-28] => 3
            [2019-11-29] => 3
        )

需要输出

Array
(
    [serv1-DB] => Array
        (
            [2019-11-29] => 3
            [2019-11-28] => 3
            [2019-11-27] => 3
            [2019-11-26] => 3
            [2019-11-25] => 1
            [2019-11-24] => 0
            [2019-11-23] => 0
            [2019-11-22] => 0

        )

    [ser2-DB] => Array
        (
            [2019-11-29] => 3
            [2019-11-28] => 3
            [2019-11-27] => 3
            [2019-11-26] => 3
            [2019-11-25] => 0
            [2019-11-24] => 0
            [2019-11-23] => 0
            [2019-11-22] => 0

        )

标签: phparrayssorting

解决方案


您想要对子数组进行排序,因此您需要遍历它们中的每一个(在写入模式下)并使用以下命令以相反的顺序对键进行排序krsort

foreach ($array as &$subArray) {
  krsort($subArray);
}

演示:https ://3v4l.org/g8pBu


推荐阅读