Прочитайте несколько расширений файлов в Laravel с примерами кода

Чтобы прочитать несколько расширений файлов в Laravel, вы можете использовать различные подходы в зависимости от ваших конкретных требований. Вот несколько методов с примерами кода:

Метод 1: использование фасада Storage

use Illuminate\Support\Facades\Storage;
$fileExtensions = ['txt', 'csv', 'pdf'];
$files = [];
foreach ($fileExtensions as $extension) {
    $files = array_merge($files, Storage::files('path/to/files', function ($filePath) use ($extension) {
        return pathinfo($filePath, PATHINFO_EXTENSION) === $extension;
    }));
}
// $files now contains an array of file paths with the specified extensions

Метод 2: использование фасада File

use Illuminate\Support\Facades\File;
$fileExtensions = ['txt', 'csv', 'pdf'];
$files = [];
foreach ($fileExtensions as $extension) {
    $files = array_merge($files, File::glob('path/to/files/*.' . $extension));
}
// $files now contains an array of file paths with the specified extensions

Метод 3: использование RecursiveDirectoryIterator

$fileExtensions = ['txt', 'csv', 'pdf'];
$files = [];
$iterator = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator('path/to/files', RecursiveDirectoryIterator::SKIP_DOTS),
    RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($iterator as $file) {
    $extension = $file->getExtension();
    if (in_array($extension, $fileExtensions)) {
        $files[] = $file->getPathname();
    }
}
// $files now contains an array of file paths with the specified extensions