|
Para generar un password aleatorio de forma rápida podemos usar las funciones md5() junto con rand() tal como sigue.
Código PHP: $caracteres = 8; // numero de caracteres a visualizar $random_pass = substr(md5(rand()),0,$caracteres); echo $random_pass ; // imprime el password
P: ¿Como genero un password facil de memorizar?
Primero habría que definir el concepto 'fàcil de memorizar', yo entiendo por facil ajikomufi y no jkimlhidt. Este sencillo escript genera un a cadena de caracteres formados por vocal consonante vocal o consonante vocal consonante, de este modo el password es leible y como consecuencia, fácil de memorizar.
Ahí va la función, la cual debería estar al inicio de todo de vuestra página junto con las demás funciones definidas.
Código PHP: function f_genera_psw($num=8){ // By Kernellover $voc = array ("a","e","i","o","u"); $con = array ("b","c","d","f","g","h","j","k","l","m","n","ñ","p","q","r","s","t","w","x","y","z"); $psw = ""; // cadena que contendrá el password. $vc = mt_rand(0,1); // definde si empieza por vocal o consonante. for ($n=0; $n<$num; $n++){ if ($vc==1){ $vc=0; $psw .= $con[mt_rand(0,count($con)-1)]; } $psw .= $voc[mt_rand(0,count($voc)-1)]; $psw .= $con[mt_rand(0,count($con)-1)]; } $psw = ereg_replace ("q","qu",$psw); $psw = ereg_replace ("quu","que",$psw); $psw = ereg_replace ("yi","ya",$psw); $psw = ereg_replace ("iy","ay",$psw); $psw = substr($psw,0,$num); return $psw; }
Para llamar a la función se puede hacer así, saliendo impresos 8 caracteres (por defecto)
Código PHP: echo f_genera_psw(); // imprime el password (8 caracteres por defecto)
Para poner otra cantidad distinta de caracteres, solo hay que pasarlo como parametro así.
Código PHP: echo f_genera_psw(6); // imprime 6 caracteres de password
|