函式名:Ds\Vector::sort()
適用版本:PHP 7.4.0 或以上
用法:該方法用於對Ds\Vector物件中的元素進行原地排序,即修改原始物件的順序。排序根據元素的自然順序進行,若排序需求特定規則,可以使用自定義的比較器。
語法:
public function sort(?callable $comparator = null): void
引數:
$comparator
(可選):自定義比較器,用於指定排序規則。如果不傳遞該引數,將使用預設的比較器。
返回值:無返回值
示例 1:使用預設的比較器對Ds\Vector物件進行排序
$vector = new Ds\Vector([3, 2, 1, 5, 4]);
$vector->sort();
print_r($vector);
輸出:
Ds\Vector Object
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
示例 2:使用自定義的比較器對Ds\Vector物件進行排序
$vector = new Ds\Vector(['apple', 'banana', 'cherry', 'durian']);
$vector->sort(function($a, $b) {
return strlen($a) <=> strlen($b);
});
print_r($vector);
輸出:
Ds\Vector Object
(
[0] => apple
[1] => durian
[2] => banana
[3] => cherry
)
在示例 2 中,我們傳遞了一個自定義的比較器函式。根據傳遞的比較規則,該方法按字串長度對元素進行排序,從而得到了排序後的結果。