- array_slice: documentation ( source)
- print_r: documentation ( source)
- implode: documentation ( source)
- array_fill: documentation ( source)
<?php
function comb($arr) {
$combs = array_fill(0, count($arr)+1, array());
for ($i = 0, $n = count($arr); $i < $n; ++$i) {
for ($j = $n-$i; $j > 0; --$j) {
$combs[$j][] = implode(', ', array_slice($arr, $i, $j));
}
}
return $combs;
}
$arr = array('a', 'b', 'c', 'd', 'e', 'f');
print_r(comb($arr));