image — PHP получает одно имя файла из каталога

пытается получить один файл из каталога (в алфавитном порядке)

и типы файлов будут png jpeg tiff gif

окончательный выход будет как
echo firstimage.jpg nextiamge.jpg previous.img

не могу заставить его работать ..
началось с этого

этот, который я восстановил после поправок к мощности, где не сохранен (показывает работу)

function getRandomFromArray($ar) {
mt_srand( (double)microtime() * 1000000 );
$num = array_rand($ar);
return $ar[$num];
}

function getImagesFromDir($path) {
$images = array();
if ( $img_dir = @opendir($path) ) {
while ( false !== ($img_file = readdir($img_dir)) ) {
// checks for gif, jpg, png
if ( preg_match("/(\.gif|\.jpg|\.png)$/", $img_file) ) {
$images[] = $img_file;
}
}
closedir($img_dir);
}
return $images;
echo $images;
}

$root = '/ers/m';
// If images not in sub directory of current directory specify root
//$root = $_SERVER['DOCUMENT_ROOT'];

$path = '';

// Obtain list of images from directory
$imgList = getImagesFromDir($root . $path);

$img = getRandomFromArray($imgList);

что я пытаюсь сделать, это слайд-шоу … из каталога
но теперь я могу вывести первый файл ..

но это все
echo «slideshow.php? nextimage.jpg»

вот основная идея
$ dir = ‘* .jpg, * .png’; так далее
получить первое имя из каталога
получить имя из каталога

благодаря Rizier123
$ types = array («png», «jpeg», «tiff», «gif»);
$ files = array ();

    foreach($types as $type) {
$files[$type] = glob("*.$type");
}

array_multisort($files);

foreach($files as $key => $type) {
if(count($type) > 0) {
echo "Type: " . $key . " First file: " . $type[0];
}
}

извините, не честно, когда меня отвергли, я пытался спасти работу, но в моей стране ужасная власть

-1

Решение

Это должно работать для вас:

<?php

$types = array("png", "jpeg", "tiff", "gif");
$files = array();

foreach($types as $type) {
$files[$type] = glob("*.$type");
}

array_multisort($files);

foreach($files as $key => $type) {
if(count($type) > 0) {
echo "Type: " . $key . " First file: " . $type[0];
}
}

?>

Возможный выход:

Type: png First file: gre.png
Type: gif First file: 1.gif
2

Другие решения

этот, который я восстановил после поправок к мощности, где не сохранен (показывает работу)

function getRandomFromArray($ar) {
mt_srand( (double)microtime() * 1000000 );
$num = array_rand($ar);
return $ar[$num];
}

function getImagesFromDir($path) {
$images = array();
if ( $img_dir = @opendir($path) ) {
while ( false !== ($img_file = readdir($img_dir)) ) {
// checks for gif, jpg, png
if ( preg_match("/(\.gif|\.jpg|\.png)$/", $img_file) ) {
$images[] = $img_file;
}
}
closedir($img_dir);
}
return $images;
echo $images;
}

$root = '/ers/m';
// If images not in sub directory of current directory specify root
//$root = $_SERVER['DOCUMENT_ROOT'];

$path = '';

// Obtain list of images from directory
$imgList = getImagesFromDir($root . $path);

$img = getRandomFromArray($imgList);
0

По вопросам рекламы [email protected]