<?php
function genera_password($longitud,$tipo="alfanumerico"){
if ($tipo=="alfanumerico"){
$exp_reg="[^A-Z0-9]";
} elseif ($tipo=="numerico"){
$exp_reg="[^0-9]";
}
return substr(eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())),
0, $longitud);
}
//Ejemplo:
echo "Password: (alfanumérico) ".genera_password(8)."<br>";
echo "Password: (numérico) ".genera_password(15,"numerico")."<br>";
?>