# Ds\Set::sort

(PECL ds >= 1.0.0)

Ds\Set::sort — Sorts the set in-place

### 说明

public Ds\Set::sort(callable `$comparator` = ?): void

Sorts the set in-place, using an optional `comparator` function.

### 参数

`comparator`

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

  callback(mixed `$a`, mixed `$b`): int
  警告

  从比较函数中返回非整数值，例如 float，将导致内部强制转换为 callback 返回值为 int。因此，诸如 `0.99` 和 `0.1` 之类的值都将被转换为整数值 `0`，将这些值比较的话将会是相等。

### 返回值

没有返回值。

### 示例

示例 #1 Ds\Set::sort() example

`<?php
$set = new \Ds\Set([4, 5, 1, 3, 2]);
$set->sort();
print_r($set);
?>`

以上示例的输出类似于：

    Ds\Set Object
    (
        [0] => 1
        [1] => 2
        [2] => 3
        [3] => 4
        [4] => 5
    )

示例 #2 Ds\Set::sort() example using a comparator

`<?php
$set = new \Ds\Set([4, 5, 1, 3, 2]);
$set->sort(function($a, $b) {
return $b <=> $a;
});
print_r($set);
?>`

以上示例的输出类似于：

    Ds\Set Object
    (
        [0] => 5
        [1] => 4
        [2] => 3
        [3] => 2
        [4] => 1
    )

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open