Poner imagen aleatoria

De ChuWiki
Saltar a: navegación, buscar

Para poner en nuestra página una imagen aleatoria con PHP, podemos hacer lo siguiente.

En un directorio imagenes colocamos todos los ficheros de imagen que queramos, con cualquier extensión. Sólo ficheros de imagen.

Luego, nuestro código PHP sería algo como esto

<?php 
$fichero = glob ('imagenes/*');
$imagen= rand(0,count($fichero)-1);
print('<img src="'.$fichero[$imagen].'" alt="una imagen" /> ');
?>

La función glob() nos da todos los ficheros que cumplen el patrón imagenes/*, es decir, todos los ficheros del directorio imagenes. Hemos puesto path relativo, así que se supone que la pagina que contiene este codigo php está a la misma altura que el directorio imagenes

+--imagenes
|  +---foto1.jpg
|  +---foto2.jpg
|  +---foto3.jpg
+--pagina.php   

La funcion glob() esta disponible desde php 4.3.0 o superior. Si tenemos php 5, podemos usar la funcion scandir('imagenes') que nos da un listado de ficheros dentro de imagenes.

La funcion glob() no nos devuelve los directorios "." y "..", mientras que scandir() sí lo hace. Si usamos scandir() debemos hacer que el número aleatorio empiece en 2 con rand(2,count($fichero));


Enlaces externos