【发布时间】:2012-10-03 11:07:23
【问题描述】:
我正在尝试将图像上传到 php 脚本。我有一个非持久性错误,导致上传的某些图像的文件大小为 0。我试图将 _FILES 数组打印到我的日志文件中,它显示错误代码为 0,应该没问题.
这些行:
foreach($_FILES['image_file'] as $key => $val){
error_log(date('j/n/o H:i:s')." ". $key ." => ".$val. "\n", 3,$log_path);
}
在日志文件中给我这些:
- 3/10/2012 12:12:54 姓名 => 59175248636.jpg
- 3/10/2012 12:12:54 类型 => 图像/jpeg
- 3/10/2012 12:12:54 tmp_name => C:\WINDOWS\Temp\php411F.tmp
- 3/10/2012 12:12:54 错误 => 0
- 3/10/2012 12:12:54 大小 => 0
可以从日志文件中读取,此脚本在 Windows 机器上运行,我对此知之甚少。我已经在php.ini中把post_max_size改成了10M,upload_max_size改成了10M。
我对这个问题大吃一惊。当我在自己的设备上进行测试时,它运行良好,但由于某种原因,当我的测试人员尝试时,它失败了。
【问题讨论】:
-
图片是否存储在文件系统中??
-
好吧。这实际上是一个好问题。当我将它部署在我无法访问的服务器上时,我唯一的测试方法是使用 move_uploaded_file。此方法返回 true 并使用 filsize 0 保存文件(到我想要的目录)。
-
你不必使用 temp_size 之类的东西来获取文件大小吗?
-
忽略我的评论 - 据我所知,这是不正确的