- var_dump: documentation ( source)
- array_unshift: documentation ( source)
- array_pop: documentation ( source)
<?php
class Queue
{
private $arr = [];
public function enqueue(&$e)
{
\array_unshift($this->arr, [&$e]);
}
public function &dequeue()
{
$x =& \array_pop($this->arr)[0];
return $x;
}
public function is_empty()
{
return empty($this->arr);
}
}
$q = new Queue();
$a = [42, 124, 35];
$q->enqueue($a);
$a[] = 1337;
$b = $q->dequeue();
$b[] = 12345;
var_dump($a);
var_dump($b);