函数名: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 中,我们传递了一个自定义的比较器函数。根据传递的比较规则,该方法按字符串长度对元素进行排序,从而得到了排序后的结果。