3v4l.org

run code in 300+ PHP versions simultaneously
<?php $ll = new SplDoublyLinkedList(); $ll->push('ze'); $ll->push('ome'); $ll->push('yei'); $ll->push('nahui'); $ll->rewind(); // HHVM works fine $iterations_done = iterator_apply($ll, function(Iterator $it) { echo implode("\t=>", array( $it->key(), $it->current(), ucfirst($it->current()) )),"\n"; return true; }, array($ll)); echo "Did iterate {$iterations_done} times \n"; $ll->rewind(); $iterations_done = iterator_apply($ll, function(Iterator $it) { echo implode("\t=>", array( $it->key(), $it->current(), ucfirst($it->current()) )),"\n"; $it->next(); return true; }, array($ll)); echo "Did iterate {$iterations_done} times \n"; $ll->setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO | SplDoublyLinkedList::IT_MODE_DELETE); var_dump($ll->count()); foreach($ll as $key => $val) { echo "{$key}\t",ucfirst($val),"\n"; } var_dump($ll->count());

preferences:
61.67 ms | 402 KiB | 5 Q