Взять случайный файл из директории

Тема в разделе "PHP", создана пользователем Albert22, 16 июл 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Albert22

    Albert22

    Регистр.:
    30 мар 2008
    Сообщения:
    270
    Симпатии:
    10
    Подскажите плз, как на РНР взять случайный файл (обложка для фотоальбома) из заданной директории (собственно сам фотоальбом).
     
  2. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    PHP:
    $handle opendir('images');
    while (
    false !== ($file readdir($handle))) {
    if (
    ereg ("([0-9]).jpg"$file$regs)) {
    $images_all[] = $file;
    }
    }
    $rand_image=array_rand($images_all);
    :ay: Спасибо - кнопкой
     
  3. bueno

    bueno Читатель

    Заблокирован
    Регистр.:
    7 май 2007
    Сообщения:
    236
    Симпатии:
    69
    ewg777
    а не проще использовать glob?..
    http://ru2.php.net/manual/ru/function.glob.php
     
    Albert22 нравится это.
  4. Albert22

    Albert22

    Регистр.:
    30 мар 2008
    Сообщения:
    270
    Симпатии:
    10
    if ereg("[0-9].jpg") {... - зачем? Попробую убрать эту проверку, так как все фото сейчас переименовывать - это бред
     
  5. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    А в каком формате у Вас фото? :nezn:
    PHP:
    $handle opendir('images'); 
    while (
    false !== ($file readdir($handle))) { 
    $images_all[] = $file

    $rand_image=array_rand($images_all);
    Значит так! :ay:
     
    Albert22 нравится это.
  6. Albert22

    Albert22

    Регистр.:
    30 мар 2008
    Сообщения:
    270
    Симпатии:
    10
    Спасибо обоим: за glob и array_rand (o_O) :) :
    PHP:

    $files
    =glob("somedir/*.jpg");
    echo 
    $files[array_rand($files)];
     
Статус темы:
Закрыта.