PHPTS:一键免费搭建 Nginx + PHP + MySQL 运行环境

Ds\Map::ksort

(PECL ds >= 1.0.0)

Ds\Map::ksort Sorts the map in-place by key

说明

public Ds\Map::ksort ([ callable $comparator ] ) : void

Sorts the map in-place by key, using an optional comparator function.

参数

comparator

在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。

callback ( mixed $a, mixed $b ) : int
Caution

Returning non-integer values from the comparison function, such as float, will result in an internal cast to integer of the callback's return value. So values such as 0.99 and 0.1 will both be cast to an integer value of 0, which will compare such values as equal.

返回值

没有返回值。

范例

Example #1 Ds\Map::ksort() example

<?php
$map 
= new \Ds\Map(["b" => 2"c" => 3"a" => 1]);
$map->ksort();

print_r($map);
?>

以上例程的输出类似于:

Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => a
            [value] => 1
        )

    [1] => Ds\Pair Object
        (
            [key] => b
            [value] => 2
        )

    [2] => Ds\Pair Object
        (
            [key] => c
            [value] => 3
        )

)

Example #2 Ds\Map::ksort() example using a comparator

<?php
$map 
= new \Ds\Map([=> "x"=> "y"=> "z"]);

// Reverse
$map->ksort(function($a$b) {
    return 
$b <=> $a;
});

print_r($map);
?>

以上例程的输出类似于:

Ds\Map Object
Ds\Map Object
(
    [0] => Ds\Pair Object
        (
            [key] => 2
            [value] => y
        )

    [1] => Ds\Pair Object
        (
            [key] => 1
            [value] => x
        )

    [2] => Ds\Pair Object
        (
            [key] => 0
            [value] => z
        )

)