Un famoso script utilizzato per la generazione di password casuali:

function randomGen($min,$max) {
    mt_srand ((double) microtime() * 1000000);
    $randval = mt_rand($min,$max);
    return $randval;
}

function translate() {

    $x = randomGen(1,36);
    $y = randomGen(1,2);

    if ($x == 1) {$char = "A";}
    if ($x == 2) {$char = "B";}
    if ($x == 3) {$char = "C";}
    if ($x == 4) {$char = "D";}
    if ($x == 5) {$char = "E";}
    if ($x == 6) {$char = "F";}
    if ($x == 7) {$char = "G";}
    if ($x == 8) {$char = "H";}
    if ($x == 9) {$char = "I";}
    if ($x == 10) {$char = "J";}
    if ($x == 11) {$char = "K";}
    if ($x == 12) {$char = "L";}
    if ($x == 13) {$char = "M";}
    if ($x == 14) {$char = "N";}
    if ($x == 15) {$char = "O";}
    if ($x == 16) {$char = "P";}
    if ($x == 17) {$char = "Q";}
    if ($x == 18) {$char = "R";}
    if ($x == 19) {$char = "S";}
    if ($x == 20) {$char = "T";}
    if ($x == 21) {$char = "U";}
    if ($x == 22) {$char = "V";}
    if ($x == 23) {$char = "W";}
    if ($x == 24) {$char = "X";}
    if ($x == 25) {$char = "Y";}
    if ($x == 26) {$char = "Z";}
    if ($x == 27) {$char = "0";}
    if ($x == 28) {$char = "1";}
    if ($x == 29) {$char = "2";}
    if ($x == 30) {$char = "3";}
    if ($x == 31) {$char = "4";}
    if ($x == 32) {$char = "5";}
    if ($x == 33) {$char = "6";}
    if ($x == 34) {$char = "7";}
    if ($x == 35) {$char = "8";}
    if ($x == 36) {$char = "9";}

    if ($y == 1) {$char = strtolower($char);};
    return $char;
}

function generatePassword(){
   $randomPW="";
   for ($ran=1;$ran< =7;$ran++){
	$randomPW.= translate();
   }
   return $randomPW;
}