Wamp64,PHP7,Laravel 5.2,tmp文件夹dosnt存储文件

时间:2016-05-12 11:13:55

标签: wamp laravel-5.2

所以即时通讯使用wamp64与php7我试图上传图像。 我的表格看起来像这样:

<form  method="POST" action="/dashboard/nalaz/dodaj/{{ $patients->id}}" enctype="multipart/form-data">
    <input type="file" name="images[]">
</form>

这是我的php.ini文件上传配置

file_uploads = On
upload_tmp_dir ="C:/wamp64/tmp"
upload_max_filesize = 3M
max_file_uploads = 5

现在我在laravel控制器中执行此操作

$temp = tmpfile();
$images = $request->file('reportimages');
dd($images);

dd()为我提供了上传文件数组

array:1 [▼
  0 => UploadedFile {#363 ▼
    -test: false
    -originalName: "11082663_10205108991016758_689124932158641809_n.jpg"
    -mimeType: "image/jpeg"
    -size: 42149
    -error: 0
    path: "C:\wamp64\tmp"
    filename: "php95FE.tmp"
    basename: "php95FE.tmp"
    pathname: "C:\wamp64\tmp\php95FE.tmp"
    extension: "tmp"
    realPath: "C:\wamp64\tmp\php95FE.tmp"
    aTime: 2016-05-12 10:21:16
    mTime: 2016-05-12 10:21:16
    cTime: 2016-05-12 10:21:16
    inode: 0
    size: 42149
    perms: 0100666
    owner: 0
    group: 0
    type: "file"
    writable: true
    readable: true
    executable: false
    file: true
    dir: false
    link: false
    linkTarget: "C:\wamp64\tmp\php95FE.tmp"
  }
]

但是NOTHING被写入&#34; C:/ wamp64 / tmp&#34; 所以它实际上无法保存immage,因为tmp文件夹中没有图像

我在Windows上,我为tmp文件夹的所有用户授予了所有权限。

1 个答案:

答案 0 :(得分:1)

引用the PHP Manual on file uploads

  

如果文件尚未移走或重命名,该文件将在请求结束时从临时目录中删除。

Laravel的dd()结束了脚本执行,所以在那之后,文件就消失了。

但重命名上传的文件是微不足道的,PHP甚至还有一个指定的功能:move_uploaded_file()