Car*_*rlo 9 upload image symfony
如果我打印UploadedFile实例的内容,这就是我得到的
array (
'opt_image_header' =>
Symfony\Component\HttpFoundation\File\UploadedFile::__set_state(array(
'test' => false,
'originalName' => 'triangle-in-the-mountains.jpg',
'mimeType' => 'image/jpeg',
'size' => 463833,
'error' => 0,
)
Run Code Online (Sandbox Code Playgroud)
这就是我在Controller中获取上传文件的方法.在移动它之前,我应该调整它.
foreach($request->files as $uploadedFile){
$ext = '.' . $uploadedFile['opt_image_header']->guessExtension();
$filename = sha1(uniqid(mt_rand(), true)) . $ext;
$uploadedFile['opt_image_header']->move($path . '/images/', $filename);
}
Run Code Online (Sandbox Code Playgroud)
所以在保存之前没有"tmp_name"我需要调整图像大小.
我是否需要直接从$ _FILE数组中读取它?
Nic*_*tel 20
$uploadedFile->getRealPath()Symfony\Component\HttpFoundation\File\UploadedFileextends Symfony\Component\HttpFoundation\File\File,扩展了PHP SplFileInfo,因此UploadedFile继承了所有方法SplFileInfo.
使用$uploadedFile->getRealPath()了该文件的绝对路径.您还可以使用其他方法,例如getFilename()或getPathname().有关可用方法的完整列表SplFileInfo,请参阅文档.
Symfony的File类添加了一些额外的方法,例如move()和getMimeType(),并添加了向后兼容性getExtension()(在PHP 5.3.6之前不可用).UploadedFile加上最重要的是,如一些额外的方法getClientOriginalName()和getClientSize(),它提供了你通常会从获得相同的信息$_FILES['name']和$_FILES['size'].
| 归档时间: |
|
| 查看次数: |
10933 次 |
| 最近记录: |