PHP: LimitIterator - Manual
The LimitIterator class
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
Introduction
The LimitIterator class allows iteration over a limited subset of items in an Iterator.
Class synopsis
Examples
Example #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);
}
?>The above example will output:
string(5) "apple" string(6) "banana" string(6) "cherry" string(6) "cherry" string(6) "damson" string(10) "elderberry"
Table of Contents
- LimitIterator::__construct — Construct a LimitIterator
- LimitIterator::current — Get current element
- LimitIterator::getPosition — Return the current position
- LimitIterator::key — Get current key
- LimitIterator::next — Move the iterator forward
- LimitIterator::rewind — Rewind the iterator to the specified starting offset
- LimitIterator::seek — Seek to the given position
- LimitIterator::valid — Check whether the current element is valid
Found A Problem?
christophg at grenz-bonn dot de ¶
4 years ago
If the inner iterator implements SeekableIterator, LimitIterator uses seek() after rewind() to move to the offset.woody dot gilk at gmail dot com ¶
8 months ago
Note that the keys are NOT altered by LimitIterator, so:
$items = new LimitIterator([0 => 'foo', 1 => 'bar', 2 => 'baz'], 1, 1);
// $items is effectively [1 => 'bar']