从Symfony中的表单获取文件对象

时间:2016-10-18 13:18:14

标签: php symfony

我有一个场景,我必须使用旧式的形式为什么这样;

<form action="{{ path('admin_app_address_import') }}" method="post" name="form_import">
    <div class="form-group">
        <label for="inputFile">File input</label>
        <input type="file" id="inputFile" accept="text/csv" name="inputFile">
        <p class="help-block">Select a CSV file to import.</p>
    </div>
</form>

然后在我的行动中从表格中获取参数;

public function importAction(Request $request) {   
    $file = $request->files->get('inputFile');
    var_dump($file);exit;
    //...
}

但我一直都是空的。如何获取我尝试读取的文件?我不需要将它存储在数据库中,我只需要读取内容以将其上传到数据库。我正在进行CSV导入操作,但我似乎无法获取文件对象。

在执行var_dump($request->request->all());时,我确实得到了文件名,但这样做不对吗?

1 个答案:

答案 0 :(得分:2)

允许上传文件时,表单的编码类型必须设置为multipart/form-data

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