3v4l.org

run code in 300+ PHP versions simultaneously
<?php function variations($digits, $prefix = '') { $result = []; for ($i = 1; $i <= 3; $i++) { $variation = $prefix . $i; if ($digits > 1) { $result = array_merge($result, variations($digits - 1, $variation)); } else { $result[] = $variation; } } return $result; } print_r(variations(1));

preferences:
26.77 ms | 405 KiB | 5 Q