3v4l.org

run code in 300+ PHP versions simultaneously
<?php function repeatInt(int $val, int $min, int $max) { $validValueNum = $max - $min + 1; $offset = ($val %$validValueNum + $min) % $validValueNum; if ($offset< 0) { $offset= $validValueNum + $offset; } return $min + $offset; } echo 'Test 2 to 5' . PHP_EOL; echo '---------------------------------' . PHP_EOL; foreach (range(-10, 10) as $i) { echo $i . ' → ' . repeatInt($i, 2, 5) . PHP_EOL; } echo PHP_EOL; echo 'Test 3 to 8' . PHP_EOL; echo '---------------------------------' . PHP_EOL; foreach (range(-10, 10) as $i) { echo $i . ' → ' . repeatInt($i, 3, 8) . PHP_EOL; } echo PHP_EOL; echo 'Test -2 to -4' . PHP_EOL; echo '---------------------------------' . PHP_EOL; foreach (range(-10, 10) as $i) { echo $i . ' → ' . repeatInt($i, -4, -2) . PHP_EOL; } echo PHP_EOL;

preferences:
52.95 ms | 402 KiB | 5 Q