30秒学会 PHP 片段 · 2018年7月17日

30秒学会 PHP 片段 – rotate

Rotates the array (in left direction) by the number of shifts.

Given the $shift index, merge the array values after $shift with the values before $shift.

代码实现

function rotate($array, $shift = 1)
{
  for ($i = 0; $i < $shift; $i++) {
    array_push($array, array_shift($array));
  }

  return $array;
}

使用样例

rotate([1, 3, 5, 2, 4]); // [3, 5, 2, 4, 1]
rotate([1, 3, 5, 2, 4], 2); // [5, 2, 4, 1, 3]