【问题标题】:Laravel 5.4 upload original file name and extentionLaravel 5.4 上传原始文件名和扩展名
【发布时间】:2017-11-15 19:57:13
【问题描述】:

通过表单提交文件时,如何将原始文件名(file.jpg)上传到数据库。控制器:

public function addCv(Request $request){
        $cv = Cv::create($request->all());
        $file = $request->file_name;
        $filename = $file->getClientOriginalName();
        Storage::putFileAs('public/uploads', $file, $filename);
        return redirect()->back();
    }

目前,这个函数上传一个像这样的路径 C:\xampp\tmp\php18DD.tmp。 而不是我想要的只是文件名和扩展名(file.extension)。

存储工作正常 - 使用原始名称存储。

【问题讨论】:

    标签: php sql laravel-5


    【解决方案1】:

    你可以像下面这样使用,

    $this->getRequest()->files['name_of_file_field_in_post']->getClientOriginalName();
    

    参考:Get Uploaded File's Original Name

    【讨论】:

      【解决方案2】:

      我建议在视图中的表单标签中添加enctype="multipart/form-data",从那里上传文件:

      <form enctype="multipart/form-data">

      【讨论】:

        【解决方案3】:

        你可以试试

        $file = $request->image->getClientOriginalName(); //Get Image Name
        
        $extension = $request->image->getClientOriginalExtension();  //Get Image Extension
        
        $fileName = $file.'.'.$extension;  //Concatenate both to get FileName (eg: file.jpg)
        

        【讨论】:

        • getClientOriginalName() 也将包含文件扩展名。
        猜你喜欢
        • 1970-01-01
        • 2018-10-17
        • 2011-06-04
        • 2021-05-15
        • 1970-01-01
        • 2016-04-27
        • 2019-12-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多