用 THINKPHP 3.22 做个图片上传,调试多次总是上传失败。
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->exts = array(‘gif’, ‘jpg’, ‘jpeg’, ‘png’, ‘bmp’);// 设置附件上传类型
$upload->rootPath = ‘./upfile/’;
$upload->savePath = ‘images/’; // 设置附件上传目录
$upload->autoSub = true;
$upload->subName = array(‘date’,’Ym’); //子目录设置为 年月
$upload->saveName = array(‘uniqid’,”); //文件名
$info = $upload->upload(array(‘localUrl’ =>$_FILES["imgFile"]));
注意红色部分参数设置,
第一个是 rootPath 要设置否则会提示 上传目录不存在.
第二个是subName 子目录,这个其实无所谓了,保存到 /201501/ 这种目录下。
第三个是saveName 文件名 保存文件名为 54bce76fd3578.jpg 这种文件名
最重要的是 $_FILES["imgFile"] 这个比较坑了。一般人会 $_FILES["xxxx"] 类似这种
比如我这次错误就是一个INPUT用来保存路径 另外一个INPUT type=file 才是上传。
所以要提交第二个 name 才可以。
所以要自己检查自己的代码,有时候错误很简单,确很难注意到。