Laravel 5.6:公用文件夹中已下载文件的副本

时间:2018-10-23 16:51:20

标签: php laravel

每当我访问此功能的路由时:

public function storephp($id)
{
$fileText = "file.php";
$content = 
"test content"

file_put_contents($fileText, $content);
return Response::download($fileText);
}

有了这个,我可以下载文件了,没问题。但是每次我下载文件时,公用文件夹中都有一个副本。我的意思是,如果我下载了file.php文件三次,则公用文件夹中只有一个file.php文件。我想知道这是否正常,如果不正常,我该如何解决。

1 个答案:

答案 0 :(得分:3)

您每次通过file_put_contents创建文件。您可以使用:

Response::download($fileText)->deleteFileAfterSend(true);

OR

return response()->streamDownload(function () use($content) {
    echo $content;
}, 'file.php');

在第二种方法中,删除file_put_contents