0

我目前使用带有自定义函数的 usort 对多维数组进行排序:

usort($arr, function($a, $b) {
    return $a['count'] - $b['count'];
});

这将对数组进行很好的排序,但会丢失关键信息。给定数组:

Array
(
    [3] => Array
        (
            [foo] => bar
            [count] => 11
        )

    [7] => Array
        (
            [foo] => baz
            [count] => 1
        )
)

usort将产生:

Array
(
    [0] => Array
        (
            [foo] => baz
            [count] => 1
        )

    [1] => Array
        (
            [foo] => bar
            [count] => 11
        )
)

我想按 排序count,但保留键[3][7]。不幸的是usort,将键设置为[0][1]

4

1 回答 1

5

改为使用uasort(),它会保留原始密钥

于 2012-09-27T22:53:41.093 回答