Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Números aleatorios en PHP


Generación de números aleatorios en PHP.


PHP dispone de una serie de funciones para generar números aleatorios fácilmente. Las vamos a ver explicando sus usos y diferencias de funcionamiento. La forma más básica de generar un número aleatorio en PHP consiste en dos pasos:

//alimentamos el generador de aleatorios
srand (time());
//generamos un número aleatorio
$numero_aleatorio = rand(1,100);


Como vemos, en el primer paso se utiliza la función srand() para alimentar la semilla de generación de números aleatorios. Este paso es necesario sólo en versiones anteriores a PHP 4.2.0, pues a partir de esta versión este paso se hace automáticamente. A la función srand() hace falta enviarle un valor para alimentar la semilla. Nosotros enviamos lo que devuelve time(), que es un timestamp con el número de segundos desde el inicio de 1970.

Luego generamos un número aleatorio con la función rand() que recibe un par de valores opcionalmente, que son el mínimo y el máximo de los números aleatorios generados. En el caso anterior se consigue un número aleatorio entre 1 y 100, incluyendo estos dos valores entre los posibles.

Si no se indica nada a rand(), el valor mínimo será cero. El valor máximo depende de la plataforma donde se esté ejecutando PHP, por ejemplo en Windows el valor máximo sería 32786. Si queremos asegurarnos que este valor máximo sea mayor, entonces conviene definir los valores máximo y mínimo al llamar a la función.

Generación de números aleatorios con mt_rand()

PHP tiene otras funciones para generar los números aleatorios, aparte de las que hemos visto, que utilizan unos algoritmos mejorados para conseguir números al azar.

La función de PHP mt_rand() genera aleatorios con un algoritmo que es de promedio 4 veces más rápido que el algoritmo que utiliza rand().

El uso de mt_rand() es similar:

//alimentamos el generador de aleatorios
mt_srand (time());
//generamos un número aleatorio
$numero_aleatorio = mt_rand(0,5);


Primero se debe utilizar mt_srand() para empezar la generación de números aleatorios con una semilla. Pero este paso a partir de PHP 4.2.0 no es necesario, porque se hace automáticamente.

Luego se generan los números aleatorios con mt_rand(), a la que le pasamos el rango de valores que queremos obtener, con los parámetros mínimo y máximo. En nuestro ejemplo obtendremos valores aleatorios entre el 0 y el 5.

La generación de números aleatorios en PHP es muy sencilla, como se ha podido comprobar. Si queremos que los números aleatorios tengan decimales podemos probar el truco de la FAQ: Números aleatorios decimales en PHP

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Taller de PHP

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en PHP


 Comentarios de los visitantes
Aun no hemos recibido comentarios de este artículo.
Puedes ser el primero en enviar tu comentario.



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Taller de PHP
Categorías
+PHP

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia