La función SplDoublyLinkedList::setIteratorMode() es una función incorporada en PHP que se utiliza para establecer el modo de iteración.
Sintaxis:
void SplDoublyLinkedList::setIteratorMode( int $mode )
Parámetros: esta función acepta un solo parámetro $mode que contiene dos conjuntos ortogonales de modos que se enumeran a continuación:
La dirección de la iteración es:
- SplDoublyLinkedList::IT_MODE_LIFO (estilo de pila)
- SplDoublyLinkedList::IT_MODE_FIFO (estilo de cola)
El comportamiento del iterador es:
- SplDoublyLinkedList::IT_MODE_DELETE (El iterador elimina los elementos)
- SplDoublyLinkedList::IT_MODE_KEEP (El iterador recorre los elementos)
Valor devuelto: esta función no devuelve ningún valor.
Los siguientes programas ilustran la función SplDoublyLinkedList::setIteratorMode() en PHP:
Programa 1:
<?php // Declare an empty SplDoublyLinkedList $list = new SplDoublyLinkedList(); // Add the element into SplDoublyLinkedList $list->setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO); // Use getIteratorMode() function $mode = $list->getIteratorMode(); var_dump($mode); // Add the element into SplDoublyLinkedList $list->setIteratorMode(SplDoublyLinkedList::IT_MODE_DELETE); // Use getIteratorMode() function $mode = $list->getIteratorMode(); var_dump($mode); // Add the element into SplDoublyLinkedList $list->setIteratorMode(SplDoublyLinkedList::IT_MODE_LIFO); // Use getIteratorMode() function $mode = $list->getIteratorMode(); var_dump($mode); ?>
Producción:
int(0) int(1) int(2)
Programa 2:
<?php // Declare an empty SplDoublyLinkedList $list = new SplDoublyLinkedList(); // Add the element into SplDoublyLinkedList $list->setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO | SplDoublyLinkedList::IT_MODE_DELETE | SplDoublyLinkedList::IT_MODE_LIFO); $mode = $list->getIteratorMode(); var_dump($mode & SplDoublyLinkedList::IT_MODE_FIFO); var_dump($mode & SplDoublyLinkedList::IT_MODE_LIFO); var_dump($mode & SplDoublyLinkedList::IT_MODE_DELETE); var_dump($mode & SplDoublyLinkedList::IT_MODE_KEEP); ?>
Producción:
int(0) int(2) int(1) int(0)
Referencia: https://www.php.net/manual/en/spldoublylinkedlist.setiteratormode.php