我可以像这样获取文件对象:
$request->files->get('file')
但是我必须给我的上传者php原生文件($_FILES['file']
)。
有没有办法从请求对象中获取本机文件?
Symfony var_dump(xdebug html输出):
<pre class='xdebug-var-dump' dir='ltr'>
<b>object</b>(<i>Symfony\Component\HttpFoundation\File\UploadedFile</i>)[<i>13</i>]
<i>private</i> 'test' <font color='#888a85'>=></font> <small>boolean</small> <font color='#75507b'>false</font>
<i>private</i> 'originalName' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'slide-3.jpg'</font> <i>(length=11)</i>
<i>private</i> 'mimeType' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'image/jpeg'</font> <i>(length=10)</i>
<i>private</i> 'size' <font color='#888a85'>=></font> <small>int</small> <font color='#4e9a06'>147845</font>
<i>private</i> 'error' <font color='#888a85'>=></font> <small>int</small> <font color='#4e9a06'>0</font>
</pre>
答案 0 :(得分:1)
正如您在HttpFoundations FileBag中看到的那样, https://github.com/symfony/HttpFoundation/blob/master/FileBag.php
所有文件都转换为UploadedFile类,此类具有本机php $ _FILES [&#39; file&#39;]所具有的所有信息。
Symfony\Component\HttpFoundation\File\UploadedFile
如果你仍然想使用$ _FILES [&#39;文件&#39;],你可以简单地使用超级全局,它们仍然可用。 请求只是包装Superglobals以面向对象的方式抽象它们