如何在laravel 5.4中获得正确的文件扩展名

moj*_*nco 4 php file-upload laravel laravel-5.4

当我在laravel 5.4中上传一个csv文件时,我将'txt'作为扩展名.有什么我想念的吗?

视图

{!! Form::open(['url' => 'transaction/save', 'files' => true]) !!}

{!! Form::file('batch'); !!}

{!! Form::submit('Upload') !!}

{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud)

调节器

public function saveBatch(Request $request)
 {
        $file = $request->batch;
        $path = $request->batch->extension();

        dd($path);
 }
Run Code Online (Sandbox Code Playgroud)

apo*_*fos 9

您需要先移动文件,否则该文件实际上是一个没有扩展名的临时文件.你也可以使用:

 $request->batch->getClientOriginalExtension();
Run Code Online (Sandbox Code Playgroud)

这将返回原始文件名的扩展名.更多方法:http://api.symfony.com/3.0/Symfony/Component/HttpFoundation/File/UploadedFile.html