Wszystkie możliwe kombinacje, jak zrobić wzór? PHP?

Robię kod, który eliminuje niepotrzebne kombinacje, takie jak I (ABCDE) nie chce AAA BBB AB BA chce tylko ABC ABD ABE .... tak dalej, czy ma być poprawny w każdej sytuacji, przykładowy kod, który wykonałem w ten sposób: tworzy zestaw kombinacji (1-6) 3 na 3 ... ale chcę, żeby był funciane (1-15) z kombinacjami 4 na 4 lub 10 do 10 .... Zobacz przykład na lepsze zrozumienie.

$lista = array(1,2,3,4,5,6);
$b=1;
for ($i=0; $i<=3; $i++) {
    for ($j=$b; $j<=4;$j++) {
    //  printf('valor do j = '.$j.'<br>');
        for ($k=$j+1; $k<count($lista); $k++) {
            printf($lista[$i].$lista[$j].$lista[$k].'<br>');
        }
    }
    $b++;
}

Wynik

123
124
125
126
134
135
136
145
146
156
234
235
236
245
246
256
345
346
356
456

questionAnswers(3)

yourAnswerToTheQuestion