Вот мой код, чтобы получить все возможности:
$seq[1] = 'd';
$seq[2] = 'f';
$seq[3] = 'w';
$seq[4] = 's';
for($i = 1; $i < 5; $i++)
{
    $s['length_1'][] = $seq[$i];
    $c1++;
    for($i2 = $i+1; $i2 < 5; $i2++)
    {
        $s['length_2'][] = $seq[$i].$seq[$i2]; 
        $last = $seq[$i].$seq[$i2]; 
        $c2++;
        for($i3 = $i2+1; $i3 < 5; $i3++)
        { 
            $s['length_3'][] = $last.$seq[$i3];
            $last = $last.$seq[$i3];    
            $c3++;
            for($i4 = $i3+1; $i4 < 5; $i4++)
            {
                $s['length_4'][] = $last.$seq[$i4];   
                $c4++;  
            }
        }
    }
}
for($i = 0; $i < $c1; $i++)
    echo $s['length_1'][$i].'<br>'; 
for($i = 0; $i < $c2; $i++)
    echo $s['length_2'][$i].'<br>';   
for($i = 0; $i < $c3; $i++)
    echo $s['length_3'][$i].'<br>';  
for($i = 0; $i < $c4; $i++)
    echo $s['length_4'][$i].'<br>';    
Но если я хочу добавить еще, то мне придется добавить еще один цикл. Итак, как я могу это сделать с рекурсией? Я пытаюсь, я стараюсь, но я действительно не могу этого сделать. Пожалуйста, помогите и отправьте пример как можно проще.
Спасибо.
