Cuando subo un archivo csv en laravel 5.4, obtengo 'txt' como extensión. ¿Se me escapa algo?
Vista
{!! Form::open(['url' => 'transaction/save', 'files' => true]) !!} {!! Form::file('batch'); !!} {!! Form::submit('Upload') !!} {!! Form::close() !!}Controlador
public function saveBatch(Request $request) { $file = $request->batch; $path = $request->batch->extension(); dd($path); }Primero debe mover el archivo, si no lo hace, entonces el archivo es en realidad un archivo temporal sin extensión. También podrías usar:
$request->batch->getClientOriginalExtension();Esto devolvería la extensión del nombre de archivo original. Más métodos en: http://api.symfony.com/3.0/Symfony/Component/HttpFoundation/File/UploadedFile.html
La mejor manera de obtener la extensión del archivo cargado: (si el nombre de entrada del archivo es archivo)
$extension = $request->file->extension();