Spesso si presenta la necessità di dover generare una stringa alfanumerica casuale, ad esempio durante la registrazione di un utente per generare una password casuale. In questo articolo vediamo come farlo con il PHP.
Il codice è molto semplice e ve lo mostro subito sotto, poi vediamo come funziona.
<?php $length = 8; $start = rand(0, 31-$length); $key = substr(md5(rand()), $start, $length); ?>
La variabile $length contiene la lunghezza della stringa da generare, $key è la stringa generata. La funzione rand() genera un numero intero casuale compreso tra un minimo (primo argomento della funzione) ed un massimo (secondo argomento). La funzione md5() restituisce l'hash md5 della stringa di partenza (in pratica una stringa alfanumerica di 32 caratteri), che nel nostro caso è il numero casuale generato da rand() (nota che anche un numero è una stringa). Infine la funzione substr() serve a prendere solo una parte della stringa di 32 caratteri.
