- str_split: documentation ( source)
<?php
function combinaisons($chaine, $prefix = '') {
if(strlen($chaine) == strlen($prefix)) {
yield $prefix;
return;
}
$caracteres = str_split($chaine, 1);
foreach($caracteres as $caractere) {
$solutions = combinaisons($chaine, $prefix.$caractere);
foreach($solutions as $solution)
yield $solution;
}
}
$combinaisons = combinaisons('abc', 4);
foreach($combinaisons as $combinaison)
echo $combinaison.'\n';