Основа
Сортировка по умолчанию - по алфавиту
<?php
$dir = '/path/to/directory';
$files = scandir($dir);
foreach ($files as $file):
echo $file .'<br>';
endforeach;
?>
Обратный порядок сортировки
<?php $dir = '/var/www/proba/www'; $files = scandir($dir,1); foreach ($files as $file): echo $file .'<br>'; endforeach; ?>
Подробнее
<?php
$dir = "/tmp/";
// Открыть заведомо существующий каталог и начать считывать его содержимое
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
print "Файл: $file : тип: " . filetype($dir . $file) . "\n";
}
closedir($dh);
}
}
?>
<?php
$dir = "/some_dir/"; //задаём имя директории
if(is_dir($dir)) { //проверяем наличие директории
echo $dir.' - директория существует;<br>';
$files = scandir($dir); //сканируем (получаем массив файлов)
array_shift($files); // удаляем из массива '.'
array_shift($files); // удаляем из массива '..'
for($i=0; $i<sizeof($files); $i++) echo '-файл: '.$files[$i].';<br>'; //выводим все файлы
}
else echo $dir.' -такой директории нет;<br>';
?>
Сделать выводимые файлы ссылками
<?php
$dir = "/some_dir/"; //задаём имя директории
if(is_dir($dir)) { //проверяем наличие директории
echo $dir.' - директория существует;<br>';
$files = scandir($dir); //сканируем (получаем массив файлов)
array_shift($files); // удаляем из массива '.'
array_shift($files); // удаляем из массива '..'
for($i=0; $i<sizeof($files); $i++) echo '-файл: <a href="'.$dir.$files[$i].'" title="открыть/скачать файл или страницу">'.$files[$i].'</a>;<br>'; //выводим все файлы
}
else echo $dir.' -такой директории нет;<br>';
?>
Как удалить из списка выводимых файлов Thumbs.db
заменить одну строчку следующим образом:
меняем
for($i=0; $i<sizeof($files); $i++) echo '-файл: '.$files[$i].';<br>'; //выводим все файлы
на
for($i=0; $i<sizeof($files); $i++) if($files[$i]!='Thumbs.db') echo '-файл: '.$files[$i].';<br>'; //выводим все файлы, кроме Thumbs.db
Функция получения случайного названия файла из директории
## Функция получения случайного названия файла из дриктории ##
function randomFileName($dir_FileName) {
// сканируем дирикторию и добавляем название файлов в массив
$array_FileName = scandir($dir_FileName);
// удаляем мусорные значение одной точки из массива
$key = array_search('.', $array_FileName);
if ($key !== false) {
unset($array_FileName[$key]);
}
// удаляем мусорные значение двух точек из массива
$key = array_search('..', $array_FileName);
if ($key !== false) {
unset($array_FileName[$key]);
}
// перемешиваем массив функцией shuffle
shuffle($array_FileName);
// выводи данные из функции
return $array_FileName[0];
}
$dir_message = 'myDir';
echo randomFileName ($dir_message);