Fare internet

E' come il lego, più pezzi ho più sono allegro
Seguci su Facebook Seguici su Twitter Iscrivita ai nostri Feed      Mandaci una mail

Vediamo passo passo come costruire una funzione php che chiameremo anagramma, che prende come parametro una stringa e restituisce la stessa stringa anagrammata.

Supponendo che $parola sia la stringa che vogliamo anagrammare , la prima cosa che facciamo è inserire una ad una tutte le lettere che compongono la parola, dentro un array:

$stack = array();
for ($i=0;$i<strlen($parola);$i++) array_push($stack, $parola{$i});

Questo lo otteniamo tramite il ciclo for con all’interno un array_push(). Il ciclo for viene eseguito tante volte quante sono le lettere che compongono la parola, poi eseguiamo un push per inserire ogni singola lettera nell’array $stack.

A questo punto per mischiare le lettere possiamo utilizzare la funzione shuffle()

shuffle($stack);

Tale funzione viene applicata ad un array e come dice il nome non fa altro che mischiare gli elementi dell’array stesso, quindi dopo aver applicato tale funzione l’array $stack conterrà tutte le lettere della parola iniziale ma in ordine diverso.
Pero ottenere l’anagramma non dobbiamo fare altro che prendere queste lettere contenute nell’array e unirle in una parola.
Il risultato desiderato si ottiene con la funzione implode() che prende come parametro un array e restituisce la stringa ottenuta concatenando tutti gli elementi dell’array.
Mettendo insieme tutti i pezzi otterremo la funzione desiderata:

function anagramma($parola){
        $stack = array();
        for ($i=0;$i<strlen($parola);$i++) array_push($stack, $parola{$i});
        shuffle($stack);
        return implode($stack);
}

Twitter