PHP - 排序多维分组数组

时间:2017-01-20 15:42:34

标签: php arrays sorting multidimensional-array array-multisort

我试图对以下数组进行排序:

$myArray = array(
    "ID"    =>  array(
                    0,
                    5,
                    8,
                    12,
                    15
                ),
    "date"  =>  array(
                    1484391600,
                    1483910300,
                    1484920000,
                    1482393630,
                    1484391600
                ),
    "name"  =>  array(
                    "Pete",
                    "Max",
                    "Tom",
                    "June",
                    "Arend"
                ),
);

我希望能够选择排序哪个子阵列以及以哪种方式(数字/字符串)和顺序(DESC / ASC)。所有其他子阵列应相应地进行排序。

这是一些最初有效的代码,但是当排序的子数组包含空字符串时,它失败了:所有子数组的排序方式都不同。

$sortCatArray = $myArray['name'];

foreach($myArray as $category => $value){
    $keepOrigin = $sortCatArray;
    array_multisort($keepOrigin, SORT_DESC, SORT_STRING, $myArray[$category]);
}

var_dump($myArray);

有人可以指出我做错了什么。

另外,我不想重新排列数组以匹配other sorting solutions,因为我需要给定格式的值。

0 个答案:

没有答案