(PECL ds >= 1.0.0)
Ds\Vector::rotate — Перематывает вектор на заданное число значений
$rotations
): void
Перематывает вектор на заданное число значений. Данная операция аналогична
выполнению заданное количество раз кода
$vector->push($vector->shift())
, если число оборотов положительно
и $vector->unshift($vector->pop())
, если отрицательно.
rotations
Количество значений, которые надо "перемотать".
Функция не возвращает значения после выполнения.. Будет изменён текущий вектор.
Пример #1 Пример использования Ds\Vector::rotate()
<?php
$vector = new \Ds\Vector(["a", "b", "c", "d"]);
$vector->rotate(1); // Аналогично $a = $vector->shift(); $vector->push($a);
print_r($vector);
$vector->rotate(2);
print_r($vector);
?>
Результатом выполнения данного примера будет что-то подобное:
( [0] => b [1] => c [2] => d [3] => a ) Ds\Vector Object ( [0] => d [1] => a [2] => b [3] => c )