3v4l.org

run code in 300+ PHP versions simultaneously
<?php function popUnshift(array $indexedArray, int $popShiftsCount): array { $count = count($indexedArray); if ($count < 2) { return $indexedArray; } $remainder = $popShiftsCount % $count; if (!$remainder) { return $indexedArray; } return array_merge( array_splice($indexedArray, -$remainder), $indexedArray ); } $A = [1, 2, 3, 4]; foreach (range(0, 9) as $K) { var_export(popUnshift($A, $K)); echo "\n---\n"; }
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
array ( 0 => 1, 1 => 2, 2 => 3, 3 => 4, ) --- array ( 0 => 4, 1 => 1, 2 => 2, 3 => 3, ) --- array ( 0 => 3, 1 => 4, 2 => 1, 3 => 2, ) --- array ( 0 => 2, 1 => 3, 2 => 4, 3 => 1, ) --- array ( 0 => 1, 1 => 2, 2 => 3, 3 => 4, ) --- array ( 0 => 4, 1 => 1, 2 => 2, 3 => 3, ) --- array ( 0 => 3, 1 => 4, 2 => 1, 3 => 2, ) --- array ( 0 => 2, 1 => 3, 2 => 4, 3 => 1, ) --- array ( 0 => 1, 1 => 2, 2 => 3, 3 => 4, ) --- array ( 0 => 4, 1 => 1, 2 => 2, 3 => 3, ) ---

preferences:
134.66 ms | 407 KiB | 122 Q