mayo 27, 2009

Imágenes aleatorias desde un directorio con PHP

Posted in Códigos tagged , , , , , , a 10:14 pm por Administrador

Si desean mostrar imágenes de un directorio de su servidor de manera aleatoria, pues esta es una solución. Simplemente deberas configurar los tipos de imágenes que deseas que se muestren y el directorio donde están alojadas.

// extensiones a mostrar

$extensions = array(‘jpg’,’jpeg’,’gif’,’png’,’bmp’);

// nombre del directorio

$folder_image_name = “/upload/”;

// ruta del directorio

$images_folder_path = $_SERVER[‘DOCUMENT_ROOT’].$folder_image_name;

// url del directorio

$url_to_folder = ‘http://’.$_SERVER[“SERVER_NAME”].$folder_image_name;

// array de imagenes

$images = array();

//srand((float) microtime() * 10000000); // Si es PHP Version < 4.2.0

// abrimos directorio y mostramos imagenes

if ($handle = opendir($images_folder_path)) {

while (false !== ($file = readdir($handle))) {

if ($file != “.” && $file != “..”) {

// obtener extension del archivo

$ext = strtolower(substr(strrchr($file, “.”), 1));

// almacenamos en el array

if(in_array($ext, $extensions)){

$images[] = $url_to_folder.$file;

}

}

}

closedir($handle);

}

if(!empty($images)){ // si tenemos algo que mostrar…

$rand_key = array_rand($images, 1);

$src = $images[$rand_key];

echo ““;

// mostrar una segunda imagen diferente a la primera

unset($images[$rand_key]);

$rand_key = array_rand($images, 1);

$src = $images[$rand_key];

echo ”

“;

}else{

// nada que mostrar

echo ‘No se encontraron imagenes en ‘.$images_folder_path.’‘;

}

?>

Anuncios

1 comentario »

  1. Vale agradecer como comentario tan valiosa explicación para mostrar imágenes de un directorio de su servidor de manera aleatoria. De hecho me parece que es una amplia información por eso vale la pena hacer un comentario al respecto aunque sea el primero luego pueden venir más.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: