src/Peach/Util/Arrays.php
public static function asort(array $arr, Comparator $c = null)
    {
        if (count($arr) < 2) {
            return $arr;
        }
        if (!isset($c)) {
            $c = DefaultComparator::getInstance();
        }
        $func = function ($var1, $var2) use ($c) {
            return $c->compare($var1, $var2);
        };
        uasort($arr, $func);
        return $arr;
    }
public static function asort(array $arr, Comparator $c = null)
    {
        if (count($arr) < 2) {
            return $arr;
        }
        if (!isset($c)) {
            $c = DefaultComparator::getInstance();
        }
        $func = function ($var1, $var2) use ($c) {
            return $c->compare($var1, $var2);
        };
        uasort($arr, $func);
        return $arr;
    }
配列のキーと値のマッピングを保持しながら, 指定された配列をソートします.
コンパレータが指定されなかった場合は {@link DefaultComparator} が適用されます.

@param  array      $arr ソート対象の配列
@param  Comparator $c   コンパレータ
@return array           ソート後の配列