Números Aleatorios en PHP
Es común la necesidad de generar números aleatorios, ya sea a mostrar post o productos aleatorios. PHP como cualquier otro lenguaje permite la generación de números aleatorios de manera sencilla con las funciones rand y mt_rand.
Utilizando la función rand()
Antes de generar el número aleatorio lo primero es generar inicializar el generador de números con la función srand(), por que de lo contrario corremos el riesgo de generar los mismos valores. Entonces vamos a generar un número entero entre 0 y 500.
Utilizando la función mt_rand()
Esta función es semejante a la anterior pero es mucho mas rápida y con un mejor algoritmo de generación de aleatorios.
Generar aleatorio decimal
Las funciones anteriores generan valores enteros, si lo que deseamos son números aleatorios decimales, podemos dividir el resultado entre un factor. Por ejemplo si deseamos generar una imagen con una transparencia aleatorios, debemos generar un número entre 0 y 1 pues esos son los valores aceptados para la transparencia.
function randomAlpha() {
$rnd = rand(0,100);
return $rnd/100;
}
echo randomAlpha(); // 0.27
Generar Colores Aleatorios
Los colores están expresados por 6 números hexadecimales, entonces generaremos uno a uno los 6 valores aleatorios entre 0 y 16, luego los convertiremos en números hexadecimales. Luego podemos crear un función llamada randomColor:
function randomColor() {
$color = "";
for ($i=0; $i<6; $i++){
}
return "#".$color;
}
Luego podemos utilizar esta función para generar un texto con un color aleatorio, para ello guardamos el color generado en una variable para posteriormente mostrarla.
$rndcolor = randomColor();
echo "<div style=\"color:".$rndcolor."\">".$rndcolor."</div>";
Pueden ver el ejemplo funcionando en: random.php. Como pueden ver con un poco de imaginación podemos generar diferentes valores aleatorios, solamente depende de nuestra creatividad.
Vía unijimpe
