SplQueue removes items in the same order they were added.

SPL Queue

spl_queue.php
<?php
$first = ;
$queue = new SplQueue();
$queue->enqueue($first);
$queue->enqueue("review");
$served = $queue->dequeue();
$remaining = $queue->count();

echo "first=" . $first . "\n";
echo "served=" . $served . "\n";
echo "remaining=" . $remaining . "\n";
<?php
$first = ;
$queue = new SplQueue();
$queue->enqueue($first);
$queue->enqueue("review");
$served = $queue->dequeue();
$remaining = $queue->count();

echo "first=" . $first . "\n";
echo "served=" . $served . "\n";
echo "remaining=" . $remaining . "\n";
<?php
$first = ;
$queue = new SplQueue();
$queue->enqueue($first);
$queue->enqueue("review");
$served = $queue->dequeue();
$remaining = $queue->count();

echo "first=" . $first . "\n";
echo "served=" . $served . "\n";
echo "remaining=" . $remaining . "\n";
first in first out Queue operations model work that should be handled from oldest to newest.