thinkphp本地可以上传成功,到服务器就不能上传了!

测试了下 发现原因是 getimagesize($file['tmp_name']) === false

本地得到
$file数组
array(9) { ["name"]=> string(6) "01.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(23) "F:\xampp\tmp\php114.tmp" ["error"]=> int(0) ["size"]=> int(23050) ["key"]=> int(0) ["extension"]=> string(3) "jpg" ["savepath"]=> string(15) "./upfiles/pics/" ["savename"]=> string(6) "01.jpg" }
读取$file['tmp_name'] 显示
F:\xampp\tmp\php114.tmp01.jpg

而服务器上 $file 数组一样
但$file['tmp_name'] 有点不一样 D:\wamp\tmp\php3828.tmp

服务器上的getimagesize($file['tmp_name']) 获取不到 返回 false

请问是什么原因 怎么解决

getimagesize会报错主要是两个问题,一个是路径访问不到文件,另一个是访问到的文件不是图片,后者不受扩展名的影响。那么最有可能的原因就是文件没访问到。那是缓存文件啊,最好是取最后保存的图片文件信息。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-17
目测是 路径问题,如果不是,就而不知道了
相似回答