Класс SplQueue

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

Введение

Класс SplQueue предоставляет основные функциональные возможности очереди, реализованной с использованием двусвязного списка, установив режим итератора SplDoublyLinkedList::IT_MODE_FIFO.

Обзор классов

class SplQueue extends SplDoublyLinkedList {
/* Наследуемые константы */
/* Методы */
public dequeue(): mixed
public enqueue(mixed $value): void
/* Наследуемые методы */
public SplDoublyLinkedList::add(int $index, mixed $value): void
}

Примеры

Пример #1 Пример использования SplQueue

<?php
$q
= new SplQueue();
$q[] = 1;
$q[] = 2;
$q[] = 3;
foreach (
$q as $elem) {
echo
$elem."\n";
}
?>

Результат выполнения приведённого примера:

1
2
3

Пример #2 Эффективное решение задач с помощью SplQueue

<?php
$q
= new SplQueue();
$q->setIteratorMode(SplQueue::IT_MODE_DELETE);
// ... добавление некоторых задач в очередь ...
// обработка
foreach ($q as $task) {
// ... обработка $task ...
// добавление новых задач в очередь
$q[] = $newTask;
// ...
}
?>

Содержание