If the inner iterator implements SeekableIterator, LimitIterator uses seek() after rewind() to move to the offset.
PHP - Manual: LimitIterator
2024-11-13
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
LimitIterator 类允许遍历一个 Iterator 的限定子集的元素。
示例 #1 LimitIterator usage example
<?php
// Create an iterator to be limited
$fruits = new ArrayIterator(array(
'apple',
'banana',
'cherry',
'damson',
'elderberry'
));
// Loop over first three fruits only
foreach (new LimitIterator($fruits, 0, 3) as $fruit) {
var_dump($fruit);
}
echo "\n";
// Loop from third fruit until the end
// Note: offset starts from zero for apple
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"
If the inner iterator implements SeekableIterator, LimitIterator uses seek() after rewind() to move to the offset.