PHP 在保留数组键的同时对维度关联数组进行排序

PHP sort dimension associative array while keeping array key

我有这样的数组..

<?php

$a = array(
    "2" => array(
        "v" => 1
    ),
    "3" => array(
        "v" => 2
    )
);

usort($a, function($a, $b)
{
    return $a['v'] < $b['v'];
});

当我使用usortv的值排序时,它return

Array
(
    [0] => Array
        (
            [v] => 2
        )

    [1] => Array
        (
            [v] => 1
        )

)

但我希望密钥不被修改,例如

Array
(
    [3] => Array
        (
            [v] => 2
        )

    [2] => Array
        (
            [v] => 1
        )

)

可能吗?

使用uasort 保留密钥

<?php

$a = array(
    "2" => array(
        "v" => 1
    ),
    "3" => array(
        "v" => 2
    )
);

uasort($a, function($a, $b)
{
    return $a['v'] < $b['v'];
});