Загрузить файл Excel, хранящийся в хранилище на php

#php #excel #laravel

#php #excel #laravel

Вопрос:

У меня есть файл Excel, присутствующий в каталоге хранилища. Я хочу, чтобы этот файл был загружен, как только я нажму на кнопку «загрузить Excel». Как я могу это сделать?

Ответ №1:

Используя «storage_path()», мы получаем путь к хранилищу. А затем, указав путь и имя, мы можем загрузить файл. Нам нужно передать заголовок для content-type как ‘application / octet-stream’

        $file= storage_path(). "/excelFile.xlsx";
        $headers = array(
                  'Content-Type: application/octet-stream',
                );
        return response()->download($file, 'excelFile.xlsx', $headers);
 

Ответ №2:

Вы можете использовать Storage фасад из Laravel. https://laravel.com/docs/8.x/filesystem#downloading-files

При использовании disk('local') он будет заглядывать в storage/app каталог.

  public function download()
    {
        return Storage::disk('local')->download('path-to-excel-file', 'filename.xlsx');
    }