РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
779 of 1392 menu

Метод allFiles

Метод allFiles класса Storage применяется для получения массива всех файлов в указанной директории и всех её поддиректориях. В отличие от метода files, который возвращает только файлы верхнего уровня, allFiles рекурсивно обходит все вложенные папки и возвращает полный список файлов. Первым параметром передаётся путь к директории, вторым параметром можно передать булевый флаг для сортировки результатов.

Синтаксис

<?php use Illuminate\Support\Facades\Storage; $files = Storage::allFiles($directory); $files = Storage::allFiles($directory, $recursive); ?>

Пример

Давайте получим список всех файлов в директории 'public/uploads', включая файлы во вложенных папках:

<?php use Illuminate\Support\Facades\Storage; $res = Storage::allFiles('public/uploads'); foreach ($res as $file) { echo $file . "\n"; } ?>

Результат выполнения кода:

"public/uploads/image1.jpg" "public/uploads/image2.png" "public/uploads/2024/report.pdf" "public/uploads/2024/01/data.csv" "public/uploads/avatars/user1.jpg"

Пример

Давайте получим все файлы в корневой директории диска с сортировкой результатов по возрастанию:

<?php use Illuminate\Support\Facades\Storage; $res = Storage::allFiles('/', true); foreach ($res as $file) { echo $file . "\n"; } ?>

Результат выполнения кода:

"file1.txt" "file2.txt" "folder1/doc1.pdf" "folder1/doc2.pdf" "folder2/subfolder/doc3.pdf"

Пример

Давайте получим список всех PHP-файлов в директории 'app/Models', используя фильтрацию с помощью метода filter:

<?php use Illuminate\Support\Facades\Storage; $allFiles = Storage::allFiles('app/Models'); $phpFiles = array_filter($allFiles, function ($file) { return str_ends_with($file, '.php'); }); foreach ($phpFiles as $file) { echo $file . "\n"; } ?>

Результат выполнения кода:

"app/Models/User.php" "app/Models/Post.php" "app/Models/Comment.php" "app/Models/Category.php"

Смотрите также

  • метод files,
    который получает список файлов только в указанной директории без рекурсии
  • метод allDirectories,
    который получает список всех директорий рекурсивно
  • метод exists,
    который проверяет существование файла или директории
  • метод delete,
    который удаляет указанный файл или директорию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить