3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function generate_comb($pos, &$res, $nr) { global $comb; if ((strlen($res) + 1) / 2 == $nr or $nr == 0) { print_r('{' . $res . '}'); echo "\n"; } else { if ((strlen($res) + 1) / 2 < $nr) { if ($res != '') { $res = $res . ','; } for ($i = $pos + 1; $i < count($comb); $i++) { $var = $res . $comb[$i]; generate_comb($i, $var, $nr); } } } } $comb = array(1, 2, 3, 4, 5); $pos = -1; $res = ''; for ($i = 0; $i <= count($comb); $i++) { generate_comb($pos, $res, $i); }
Output for 4.3.0 - 7.1.0
{} {1} {2} {3} {4} {5} {1,2} {1,3} {1,4} {1,5} {2,3} {2,4} {2,5} {3,4} {3,5} {4,5} {1,2,3} {1,2,4} {1,2,5} {1,3,4} {1,3,5} {1,4,5} {2,3,4} {2,3,5} {2,4,5} {3,4,5} {1,2,3,4} {1,2,3,5} {1,2,4,5} {1,3,4,5} {2,3,4,5} {1,2,3,4,5}