Как загрузить нескольких файлов в laravel?

Пользователь

от jose , в категории: PHP , 7 месяцев назад

Как загрузить нескольких файлов в laravel?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от steve , 7 месяцев назад

@jose 

В Laravel для загрузки нескольких файлов можно использовать метод store() на экземпляре объекта IlluminateHttpUploadedFile, который позволяет загружать файлы на сервер.


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


Пример кода для загрузки нескольких файлов:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
public function uploadFiles(Request $request)
{
    $files = $request->file('files');

    foreach ($files as $file) {
        $filename = $file->getClientOriginalName();
        $path = $file->store('uploads');
        // сохранение информации о файле в базе данных
    }

    // возврат ответа
}


В этом примере метод file() получает массив файлов, загруженных с помощью поля формы с именем files. Затем мы проходимся по каждому файлу в цикле, сохраняем его на сервере и сохраняем информацию о файле в базе данных.


Обратите внимание, что необходимо добавить соответствующие правила валидации для полей формы, чтобы убедиться, что загружаемые файлы соответствуют требованиям вашего приложения.