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