Per generare codici random di solito uso questa funziona che va benissimo ma il mio dubbio è che per come è fatta non garantisca l'univocità per almeno 5 anni. Non c'è db dietro il codice viene generato ed inviato, nessuna memorizzazione in database.


function CreateCode($Length,$Elements)
{ mt_srand((double)microtime()*1000000);
$sCode=""; for($i=0;$i<$Length;$i++)
$sCode .= $Elements[
mt_rand(0,strlen($Elements)-1) ];
return $sCode;
}

//Richiamo della funzione
echo(CreateCode(10,"1Q2w3E[4r5€T6y7U8i9O!0pAsDf#GhJ]kL"));

Se qualcuno ha modo di capire quanto questa funzione possa garantire o no unicità fatemelo sapere, grazie!!