查詢

Ds\Set::sort()函式—用法及示例

「 對當前 Set 物件進行排序 」


函式名: Ds\Set::sort()

適用版本: PHP >= 7.3.0

用法: Ds\Set::sort() 方法用於對當前 Set 物件進行排序。排序後的 Set 物件會被修改,原有的元素順序將被替換為排序後的順序。

語法: public function sort(callable $comparator = null): void

引數:

  1. $comparator (可選): 用於比較元素的回撥函式。如果未提供該引數,則使用預設的比較函式來進行排序。該回撥函式需要接受兩個引數,並返回一個整數值用於表示兩個元素的順序關係。如果返回值小於0,則表示第一個元素應該排在前面;如果返回值大於0,則表示第二個元素應該排在前面;如果返回值等於0,則表示兩個元素相等,排序不變。

示例:

$set = new Ds\Set([5, 3, 1, 2, 4]);

// 預設排序
$set->sort();
print_r($set);

// 使用自定義比較函式進行降序排序
$set->sort(function ($a, $b) {
    return $b - $a;
});
print_r($set);

// 使用自定義比較函式進行按長度排序
$set = new Ds\Set(['apple', 'banana', 'cherry', 'date']);
$set->sort(function ($a, $b) {
    return strlen($a) - strlen($b);
});
print_r($set);

輸出:

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

注意: Ds\Set 類是 PHP SPL (Standard PHP Library) 中的一部分,在使用該函式之前,需要確保 SPL 擴充套件已經安裝並啟用。

補充糾錯
上一個函式: Ds\Set::reverse()函式
下一個函式: Ds\Set::slice()函式
熱門PHP函式
分享連結