如果内部迭代器实现了 SeekableIterator,LimitIterator 会在 rewind() 之后使用 seek() 来移动到偏移量。
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
The LimitIterator 类允许迭代 Iterator 中的有限子集项。
示例 #1 LimitIterator 使用示例
<?php
// 创建一个要限制的迭代器
$fruits = new ArrayIterator(array(
'apple',
'banana',
'cherry',
'damson',
'elderberry'
));
// 仅循环前三个水果
foreach (new LimitIterator($fruits, 0, 3) as $fruit) {
var_dump($fruit);
}
echo "\n";
// 从第三个水果循环到最后
// 注意:偏移量从苹果开始为零
foreach (new LimitIterator($fruits, 2) as $fruit) {
var_dump($fruit);
}
?>
上面的例子将输出
string(5) "apple" string(6) "banana" string(6) "cherry" string(6) "cherry" string(6) "damson" string(10) "elderberry"
如果内部迭代器实现了 SeekableIterator,LimitIterator 会在 rewind() 之后使用 seek() 来移动到偏移量。