3v4l.org

run code in 300+ PHP versions simultaneously
<?php function generate($elements, $maxvalue) { if ($elements == 0) return array(); $result = array(); foreach (range(1, $maxvalue) as $el) { $result[] = array($el); } foreach (range(1, $maxvalue) as $el) { foreach (generate($elements - 1, $maxvalue) as $arr) { $result[] = array($el, ...$arr); } } return $result; } $combs = generate(3, 3); print_r($combs);

preferences:
28.12 ms | 405 KiB | 5 Q