📡 You're offline — showing cached content
New version available!
Quick Access
Tutorials PHP for Beginners SPL Data Structures

SPL Data Structures

5 min read
The SPL provides ready-made data structures like SplStack, SplQueue, and SplMinHeap. These are more efficient than plain arrays for specific access patterns like LIFO and FIFO operations.

SPL Data Structures

// SplStack (LIFO)
$stack = new SplStack();
$stack->push("a");
$stack->push("b");
$stack->push("c");
echo $stack->top();  // c
$stack->pop();       // removes c

// SplQueue (FIFO)
$queue = new SplQueue();
$queue->enqueue("task1");
$queue->enqueue("task2");
echo $queue->dequeue();  // task1

// SplMinHeap (priority queue)
$heap = new SplMinHeap();
$heap->insert(5);
$heap->insert(1);
$heap->insert(3);
echo $heap->extract();  // 1 (smallest)

// SplDoublyLinkedList
// SplFixedArray — faster than arrays for known size
$arr = new SplFixedArray(1000000);
$arr[0] = "fast";