Un codice per gli anagrammi potrebbe essere questo (ricorda comunque che il numero di anagrammi è sempre molto maggiore della lunghezza della parola, cioè con una parola di N lettere sono in tutto N! = N(N-1)(N-2) ... 2*1):
Codice PHP:
function anagrams ($word)
{
$result = array ();
if (strlen ($word) <= 1)
$result[0] = $word;
else
{
$count = 0;
for ($i = 0; $i < strlen ($word); $i++)
{
$head = substr ($word, $i, 1);
$tail = anagrams (substr ($word, 0, $i) . substr ($word, $i + 1));
for ($j = 0; $j < count ($tail); $j++)
$result[$count++] = $head . $tail[$j];
}
}
return $result;
}
Chiama questa funzione con la parola da anagrammare e dovrebbe generarti in un array tutti i possibili anagrammi (memoria e timeout permettendo).
Stammi bene...