Метод files
Метод files класса Storage применяется для получения списка файлов в указанной директории. Первым параметром передается путь к директории, вторым параметром можно передать массив опций для фильтрации. Метод возвращает массив строк с именами файлов, найденных в директории. Если директория пуста, возвращается пустой массив.
Синтаксис
<?php
use Illuminate\Support\Facades\Storage;
Storage::files($directory, $options = []);
?>
Пример
Давайте получим список всех файлов в директории 'public':
<?php
use Illuminate\Support\Facades\Storage;
$files = Storage::files('public');
foreach ($files as $file) {
echo $file . "\n";
}
?>
Результат выполнения кода:
"public/file1.txt"
"public/file2.jpg"
"public/file3.pdf"
Пример
Давайте получим файлы из директории 'images' с фильтрацией по расширению:
<?php
use Illuminate\Support\Facades\Storage;
$files = Storage::files('images', ['filter' => function ($file) {
return str_ends_with($file, '.jpg') || str_ends_with($file, '.png');
}]);
foreach ($files as $file) {
echo $file . "\n";
}
?>
Результат выполнения кода:
"images/photo1.jpg"
"images/photo2.png"
"images/photo3.jpg"
Пример
Давайте получим список файлов из корневой директории без указания поддиректорий:
<?php
use Illuminate\Support\Facades\Storage;
$files = Storage::files('/');
foreach ($files as $file) {
echo $file . "\n";
}
?>
Результат выполнения кода:
"readme.md"
"index.html"
"config.json"
Смотрите также
-
метод
allFiles,
который рекурсивно получает все файлы во всех поддиректориях -
метод
directories,
который получает список поддиректорий в указанной директории -
метод
exists,
который проверяет существование файла или директории -
метод
get,
который возвращает содержимое файла