В PHP5 интерфейсы Iterator и Traversable являются уже встроенными и входят в библиотеку SPL (StandardPHPLibrary).
| Класс | Назначение |
|---|---|
| lmbIteratorBase | Абстрактный базовый класс для итераторов. |
| lmbIteratorDecorator | Базовый декоратор на итератор. |
| lmbEmptyIterator | Пустой итератор. |
| lmbArrayDataset | Итератор для массива ассоциативных массивов. Метод current() возвращает объект класса lmbDataspace, содержащий данные очередного элемента итератора. |
| интерфейс lmbPager | Интерфейс, при помощи которого клиенты получают информацию о текущем состоянии пейджера (pager) |
| интерфейс lmbPagedDataset | Интерфейс итератора, разбитого на страницы. Позволяет клиентам получить количество элементов на текущей странице (getRowCount()) и общее количество элементов без учета разбивки на страницы (getTotalRowCount()). |
| lmbPagedArrayDataset | Наследник от lmbArrayDataset, поддерживающий разбиение на страницы. |
| lmbEmptyPagedArrayDataset | Пустой итератор, поддерживающий интерфейс lmbPagedDataset. |
| lmbPagedDatasetDecorator | Базовый декоратор на итератор, поддерживающий разбиение на страницы. |
| lmbSetterDatasetDecorator | Декоратор итератора, который в каждую запись добавляет определенные данные. |
| lmbFakePager | Заглушка для пейджера. Часто используется в тестах или в тех местах, где параметры ограничения известны заранее. |