thinkphp3.2上传图片如何进行封装?
上传图片后,还需要获取表单地信息,进行添加到数据库!上传地代码是手册上的,如下图的例子,像这样地要如何封装,求大神指教!...
上传图片后,还需要获取表单地信息,进行添加到数据库!上传地代码是手册上的,如下图的例子,像这样地要如何封装,求大神指教!
展开
1个回答
展开全部
把你的上传部分写在function.php或者继承的父级控制器就行。
如:
/*文件上传*/
function _uploads($savePath='/Picture/'){
$upload = new \Think\Upload();
$upload->maxSize = 3*1024*1024;// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg', 'bmp');// 设置附件上传类型
$upload->autoSub = true;//自动子目录保存文件
$upload->subName = array('date','Y-m-d');//子目录创建方式
$upload->saveName = array('uniqid','');//上传文件命名规则,唯一性
$upload->rootPath = './Uploads/'; // 设置附件上传根目录
$upload->savePath = $savePath; // 设置附件上传(子)目录
// 上传文件
$info = $upload->upload();
return $info;
}
//此处方法调用
public function upFile(){
$file = _uploads('/Picture/');//里面可填写子目录文件路径,支持多文件上传
if($file){
$img = M('img');
//...此处添加所需逻辑处理
foreach ($file as $v) {
//...此处添加所需逻辑处理
//拼接图片地址用于保存数据库
$dataImg['url'] = '/Uploads' . $v['savepath'] . $v['savename'];//根据需求拼接路径,也可在/Uploads前拼成根路径加上项目名称
$img->add($dataImg);
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询