array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'class.limititerator.php', 1 => 'LimitIterator', ), 'up' => array ( 0 => 'spl.iterators.php', 1 => 'Итераторы', ), 'prev' => array ( 0 => 'iteratoriterator.valid.php', 1 => 'IteratorIterator::valid', ), 'next' => array ( 0 => 'limititerator.construct.php', 1 => 'LimitIterator::__construct', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/spl/limititerator.xml', ), 'extra_header_links' => array ( 'rel' => 'alternate', 'href' => '/manual/en/feeds/class.limititerator.atom', 'type' => 'application/atom+xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
Класс 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"