我无法从存储器下载文件。 Firebug的控制台显示File.php线41从Laravel的存储器下载文件
FileNotFoundException异常:文件 “C:\ XAMPP \ htdocs中\ CT \存储/ 30e9734e1f06bf751da5b3289994fb3f/34.pdf” 不存在
但文件存在于C:\xampp\htdocs\ct\storage\userdata\30e9734e1f06bf751da5b3289994fb3f
文件夹中。我认为我在代码中提到的文件路径不正确。请帮我解决这个问题。
filesystems.php
'root' => storage_path('userdata'),
DownloadController.php
public function show(TagambitionRequest $request)
{
$details = User::select('id', 'created_at')->findOrFail(Auth::user()->id);
$encrypt = md5($details->id.$details->created_at);
$directories = Storage::files($encrypt); // Listout Files
foreach($directories as $values)
{
$split_folder_file = explode('/', $values); //60e4dda43c442fe610bdbd4a0e5c3a12/19.pdf
$splitted_file = end($split_folder_file); //19.pdf
$explode_filename = explode('.', $splitted_file); //explode(19.pdf)
$explode_name = $explode_filename[0]; //19
$file_extension = $explode_filename[1]; //pdf
if ($file_extension == 'pdf') {
$path = storage_path().'/'.$encrypt.'/'.$splitted_file;
return response()->download($path, $splitted_file, ['Content-Type' => 'application/pdf']);
}
}
}
你似乎是一个Windows的计算机上 - 那么你正在使用的错误类型的斜杠,请检查您的错误消息。 在Laravel,Flysystem是默认集成的,请检查文档(http://laravel.com/docs/5.1/filesystem)强烈建议,而不是构建自己的解决方案。 – Marcus
即使在混合时,Windows也可以处理斜杠和反斜杠。所以这不是错误。当你在Windows资源管理器中通过路径时会发生什么? – mimo