Двухсторонняя очередь
PHP Manual

Ds\Deque::insert

(PECL ds >= 1.0.0)

Ds\Deque::insertВставляет значения по указанному индексу

Описание

public void Ds\Deque::insert ( int $index [, mixed $...values ] )

Вставляет значения по указанному индексу.

Список параметров

index

Индекс, по которому необходимо осуществить вставку. 0 <= index <= count

Замечание:

Можно указывать индекс, равный количеству элементов коллекции.

values

Значение или значения для вставки.

Возвращаемые значения

Эта функция не возвращает значения после выполнения.

Ошибки

Бросает исключение OutOfRangeException в случае некорректного индекса.

Примеры

Пример #1 Пример использования Ds\Deque::insert()

<?php
$deque 
= new \Ds\Deque();

$deque->insert(0"e");             // [e]
$deque->insert(1"f");             // [e, f]
$deque->insert(2"g");             // [e, f, g]
$deque->insert(0"a""b");        // [a, b, e, f, g]
$deque->insert(2, ...["c""d"]);   // [a, b, c, d, e, f, g]

var_dump($deque);
?>

Результатом выполнения данного примера будет что-то подобное:

object(Ds\Deque)#1 (7) {
  [0]=>
  string(1) "a"
  [1]=>
  string(1) "b"
  [2]=>
  string(1) "c"
  [3]=>
  string(1) "d"
  [4]=>
  string(1) "e"
  [5]=>
  string(1) "f"
  [6]=>
  string(1) "g"
}

Двухсторонняя очередь
PHP Manual