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

Метод download

Метод download класса Response используется для формирования ответа, который заставляет браузер загрузить указанный файл. Первым параметром передаётся путь к файлу на сервере, вторым - имя файла, под которым он будет сохранён у пользователя, третьим - массив заголовков ответа.

Синтаксис

<?php response()->download($path, $name, $headers); ?>

Пример

Давайте отправим пользователю файл 'document.pdf' для скачивания:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; class FileController extends Controller { public function downloadFile() { $path = storage_path('app/public/document.pdf'); return response()->download($path); } } ?>

Пример

Укажем пользовательское имя для скачиваемого файла:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; class FileController extends Controller { public function downloadFile() { $path = storage_path('app/public/report.xlsx'); return response()->download($path, 'my_report.xlsx'); } } ?>

Пример

Добавим дополнительные заголовки к ответу:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; class FileController extends Controller { public function downloadFile() { $path = storage_path('app/public/image.jpg'); $headers = [ 'Content-Type' => 'image/jpeg', 'Cache-Control' => 'public, must-revalidate' ]; return response()->download($path, 'photo.jpg', $headers); } } ?>

Пример

Используем метод в маршруте для скачивания файла:

<?php use AppHttpControllersFileController; Route::get('/download', [FileController::class, 'downloadFile']); ?>

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

  • метод file,
    который отображает файл в браузере
  • метод header,
    который добавляет заголовок к ответу
  • метод json,
    который возвращает JSON-ответ
  • метод stream,
    который отправляет потоковый ответ
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить