Хранить SQL-запросы, используя Laravel Storage Facade - PullRequest
0 голосов
/ 04 июля 2018

Я создал контроллер, который создает резервную копию данных таблицы в форме запросов SQL. В браузере есть три флажка, которые содержат 3 таблицы: заказ, сообщения и продукты . Более того, когда я выбираю эти таблицы, я хочу, чтобы они хранились в каталоге storage / app , например backup_on [Date-Time] .sql и автоматически загружались прямо из браузер. . Когда я нажал на резервную копию, я получил эту ошибку

file_put_contents (/ home / vagrant / code / laravelBackup / storage / app / backup_on [2018-07-04 08:39:15] .sql): не удалось открыть поток: ошибка протокола

Заранее спасибо. Это мой код:

public function download($output)
{
    $time = Carbon::now()->toDateTimeString();
    $file_name = 'backup_on[' . $time . '].sql';
   // $file_name = 'database_backup_on_' . date('y-m-d') . '.sql';
   // $file_name = 'backup.sql';

    Storage::disk('local')->put($file_name, $output);

    // Storage::lastModified($file_name);

    $exists = Storage::disk('local')->exists($file_name);

    if ($exists) {
        // $name_of_file = 'backup';
        $headers = 
        [
        'Content-Description => File Transfer',
        'Content-Type => application/octet-stream',
        'Content-Disposition => attachment; filename=' . basename($file_name),
        'Content-Transfer-Encoding => binary',
        'Expires => 0',  
        ob_clean(),
        flush(),
        readfile($file_name),
        unlink($file_name)
        ];

    }

    return Storage::download($file_name, $file_name, $headers);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...