io ti consiglio un generatore di password più semplice:

Codice PHP:
$password_casuale MD5(microtime());
$password_casuale str_shuffle($password_casuale);
$password_casuale substr($password_casuale08); 
Con microtime() generi un numero sempre diverso (è il timestamp del momento esatto in cui si richiama la funzione).
Questo numero lo codifichi MD5 (quindi crei unastringa alfanumerica) e poi mescoli i vari caratteri con str_shuffle().
Una volta che i caratteri sono mescolati, ne prendi i primi 8 e li invii come password casuale.

Semplice no??? Tre righe di codice, creata una password: metodo Alcio!