(PECL ds >= 1.0.0)
Ds\Sequence::slice — 返回给定范围的子序列
索引子序列开始的索引。
如果为正,则序列将从序列中的该索引开始。如果为负,则序列将从末尾开始。
长度如果给定长度并且为正,则结果序列最多包含这么多值。如果长度导致溢出,则仅包含序列末尾之前的全部值。如果给定长度并且为负,则序列将在距离末尾指定数量的值处停止。如果没有提供长度,则结果序列将包含索引和序列末尾之间的所有值。
给定范围的子序列。
示例 #1 Ds\Sequence::slice() 示例
<?php
$sequence = new \Ds\Vector(["a", "b", "c", "d", "e"]);
// 从 2 开始切片
print_r($sequence->slice(2));
// 从 1 开始切片,长度为 3
print_r($sequence->slice(1, 3));
// 从 1 开始切片
print_r($sequence->slice(1));
// 从末尾的第 2 个位置开始切片
print_r($sequence->slice(-2));
// 从 1 切片到末尾的第 1 个位置
print_r($sequence->slice(1, -1));
?>以上示例将输出类似以下内容
Ds\Vector Object
(
[0] => c
[1] => d
[2] => e
)
Ds\Vector Object
(
[0] => b
[1] => c
[2] => d
)
Ds\Vector Object
(
[0] => b
[1] => c
[2] => d
[3] => e
)
Ds\Vector Object
(
[0] => d
[1] => e
)
Ds\Vector Object
(
[0] => b
[1] => c
[2] => d
)