我有以下几天,每天有几个小时(整个数组代表兼职雇员的时间表):
Array
(
[7] => Array
(
[0] => 15
[1] => 14
[2] => 13
[3] => 11
[4] => 12
[5] => 10
)
[1] => Array
(
[0] => 10
[1] => 13
[2] => 12
)
[6] => Array
(
[0] => 14
)
[3] => Array
(
[0] => 4
[1] => 5
[2] => 6
)
)我只需要:
按asc排序每个子数组(第二维) - 无需维护数字键,值为整数
按照第一维排序asc并维护数字整数键
即:
Array
(
[1] => Array
(
[0] => 10
[1] => 12
[2] => 13
)
[3] => Array
(
[0] => 4
[1] => 5
[2] => 6
)
[6] => Array
(
[0] => 14
)
[7] => Array
(
[0] => 10
[1] => 11
[2] => 12
[3] => 13
[4] => 14
[5] => 15
)
)附加信息:
只有第一维的关键字和第二维的值(以及它们的关联)对我的用例有意义
第一个维度最多可以包含7个值,范围为1-7(一周的几天),并且至少有1个值(1天)
第二维可以有最多24个值,范围从0-23(每天的小时),并且至少有1个值(每天1小时)
我知道我可以在整个ksorted数组和sort每个第二维数组上使用foreach来完成此操作:
ksort($sched);
foreach ($sched as &$array) sort($array);
unset($array);但我希望能用本地php数组函数来实现这一点。
我的搜索引导我尝试array_multisort(array_values($array), array_keys($array), $array),但我无法完成工作。