thinkphp3.2上传图片如何进行封装?
发布网友
发布时间:2022-04-06 02:16
我来回答
共2个回答
懂视网
时间:2022-04-06 06:37
【相关学习推荐:php图文教程】
php封装方法的方法:
1、先把代码写好,能出功能了,就把该代码全部剪切过去事先创建好的类中,其中将需要的参数也写好,当然,如果你逻辑清晰的话,也可以直接封装好调用。如果是想操作页面的文本框、下拉框等等,传输的参数就不是字符串类型的了,而是创建该页面对应的标签。给你们举个简单的列子 :
2、就是该标签,在封装方法的时候一定要声明是该标签,
3、在调用时,把该标签的名称传输过去就好了,就可以利用该名称进行取值、赋值等操作
相关学习推荐:php编程(视频)
热心网友
时间:2022-04-06 03:45
把你的上传部分写在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);
}
}
}