Класс LimitIterator

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

Введение

Класс LimitIterator позволяет сделать перебор ограниченного количества элементов в Iterator.

Обзор класса

class LimitIterator extends IteratorIterator {
/* Методы */
public function __construct(Iterator $iterator, int $offset = 0, int $limit = -1)
public function current(): mixed
public function getPosition(): int
public function key(): mixed
public function next(): void
public function rewind(): void
public function seek(int $offset): int
public function valid(): bool
/* Наследуемые методы */
public function IteratorIterator::current(): mixed
public function IteratorIterator::key(): mixed
public function IteratorIterator::next(): void
public function IteratorIterator::rewind(): void
public function IteratorIterator::valid(): bool
}

Примеры

Пример #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"

Содержание