TP3.2 简易封装增、删、改、查、上传、分页、操作日志
来源:互联网 发布:淘宝app首页流量来源 编辑:程序博客网 时间:2024/06/08 14:37
在繁忙的工作中,为了提高工作的质量和效率,针对TP3.2框架我自己封装了一些方法,分享给大家!!!
<?phpclass blog{ /* * 添加 * $tableName 表名 * $data 数据 */ public function add($tableName,$data) { return $res=M($tableName)->add($data); } /* * 删除 * $tableName 表名 * $where */ public function del($tableName,$where) { return $res=M($tableName)->where($where)->delete(); } /* * 添加/修改 * $tablename表名 * $id 区分添加/修改 * $where 条件 * $data 数据 */ public function addSave($tableName,$id,$where,$data) { $con = M($tableName); if($id==''){ //入库 $res = $con->add($data); if($res){ $arr=array('status'=>$res,'data'=>"添加成功!"); }else{ $arr=array('status'=>0,'data'=>"添加失败!"); } return $arr; }else{ //修改 $result=$con->where($where)->setField($data); if($result===false){ $arr=array('status'=>2,'data'=>"修改失败"); } else{ $arr=array('status'=>3,'data'=>"修改成功"); } return $arr; } } /* * 多条查询 * $name 表名 * $field 查询字段 * $where1 查询条件 * $order 排序(默认为asc) * $limit 查询条数 */ public function manySelect($tableName,$field=true,$where1,$order,$limit) { $Model = M($tableName); // 实例化User对象 $where=empty($where1)?'is_show=1':$where1; //添加自己的条件 $result=$Model->where($where) ->field($field) ->order($order) ->limit($limit) ->select(); return $result; } /* * select 两表联查 * $tableName 主表名 * $sql 关联sql * $where 查询条件 * $order 排序(默认为asc) * $limit 查询条数 */ public function jionSelect($tableName,$sql,$where,$field,$order,$limit) { $Model = M($tableName); $result = $Model->join($sql) ->where($where) ->field($field) ->order($order) ->limit($limit) ->select(); return $result; } /* * find 两表单查 * $tableName 主表名 * $sql 关联sql * $where 查询条件 * $field 字段 */ public function jionFind($tableName,$sql,$where,$field=true){ $User=M($tableName); $result=$User->join($sql) ->field($field) ->where($where) ->find(); return $result; } /* * 文件上传 * $names 添加新的文件夹 * $filename 上传的字段 */ public function fileUpload($names,$filename){ $upload = new \Think\Upload();// 实例化上传类 $upload->maxSize = 1000000;// 设置附件上传大小 3M $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型 $upload->rootPath = './'; $upload->savePath = '/Public/'.$names.'/'; // 设置附件上传目录 // 上传文件 $info = $upload->upload($_FILES); // print_r($info);die; if (!$info) {// 上传错误提示错误信息 $error=$upload->getError(); return $data=array("msg"=>"0","error"=>$error); } else { $path ='Uploads'. $info[$filename]['savepath'] . $info[$filename]['savename']; return $data=array("msg"=>"1","success"=>$path); } } /* * 缩率图 * $img 图片 * $filename 新文件夹名 */ public function thumbnail($img,$filename){ $image = new \Think\Image(); $image->open($img);// 按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg $img_name=rand(1111,9999).time(); $rootPath = '.'; is_dir('./Uploads/Public/thumbnail/'.$filename.'/') or mkdir('./Uploads/Public/thumbnail/'.$filename.'/',0777,true); $str='/Uploads/Public/thumbnail/'.$filename.'/'.$img_name.'.jpg'; $image->thumb(70,70,\Think\Image::IMAGE_THUMB_SCALE)->save($rootPath.$str); return $str; } /* * 分页 * $tableName 表名 * $where 查询条件 * $$pagesize 每页条数 * $id 排序条件 $sort asc|desc */ public function Pages($tableName,$where,$pagesize,$id,$sort="desc",$field=true,$jion=flase,$sql){ $m=M($tableName); // $order=array($id=>$id,$sort=>$sort); $p=$this->getpage($m,$where,$pagesize,$jion=flase,$sql); if($jion){ $list=$m->join($sql)->field($field)->where($where)->order($id ." ". $sort)->select(); }else{ $list=$m->field($field)->where($where)->order($id ." ". $sort)->select(); } $page=$p->show(); return $res=array("list"=>$list,"page"=>$page); } /*定制分页样式*/ function getpage(&$m,$where,$pagesize=10,$jion=flase,$sql){ $m1=clone $m;//浅复制一个模型 if($jion){ $count = $m->join($sql)->where($where)->count();//连惯操作后会对join等操作进行重置 }else{ $count = $m->where($where)->count();//连惯操作后会对join等操作进行重置 } $m=$m1;//为保持在为定的连惯操作,浅复制一个模型 $p=new \Think\Page($count,$pagesize); $p->lastSuffix=false; $p->setConfig('header','<button type="button" class="btn btn btn-default">共<b>%TOTAL_ROW%</b>条记录 每页<b>'.$pagesize.'</b>条 第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</button>'); $p->setConfig('prev','<button type="button" class="btn btn btn-default">上一页</button>'); $p->setConfig('next','<button type="button" class="btn btn btn-default">下一页</button>'); $p->setConfig('last','<button type="button" class="btn btn btn-default">末页</button>'); $p->setConfig('first','<button type="button" class="btn btn btn-default">首页</button>'); $p->setConfig('theme','%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END% %HEADER%'); $p->parameter=I('get.'); $m->limit($p->firstRow,$p->listRows); return $p; } /* * 操作日志 * $userName 用户名 */ public function actionLog($userName){ $time=date('Y-m-d H:i:s'); $action=__ACTION__; $year=date('Y'); $mouth=date('m'); $path='./Public/Log/'.$year; //日志文件夹 is_dir($path)or mkdir($path,077,true); $file=$path.'/'.$mouth.'.text'; $con=file_get_contents($file,true); $data=$con.'['.$userName.']'.$time.''.$action."\n"; file_put_contents($file,$data); } }
希望大家多多支持!!!
阅读全文
0 0
- TP3.2 简易封装增、删、改、查、上传、分页、操作日志
- sqlite1-2增 删 改 查方法的简单封装
- 数据操作层的基类,主要封装了数据的增,删,改,查功能
- 数据操作层的基类,主要封装了数据的增,删,改,查功能
- 数据操作层的基类,主要封装了数据的增,删,改,查功能
- Java程序操作Oracle数据库实现增,删,改,查的封装类*
- iOS经典讲解之利用单例类封装对SQLite数据库增、删、查、改的操作
- java封装JDBC操作数据库的方法:增、删、改、查
- JSP实现数据库的增、删、改、查、分页查
- 用 Chukeh.dll 实现数据查询分页,及快速增、删、改、查操作
- EF基本操作增、删、查、改、分页,join……等
- 简易的人员管理~数据的增、删、查、改
- Joomla(6)增、删、改、查简易Demo
- OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)
- SQLite(2)--增,删,改,查基本操作
- SQL增、删、改、查操作语句
- XML增/删、改、查简单操作
- JDBC(一)增,删,改,查操作
- Git 命令提交项目代码处理冲突
- JS数组常用方法
- vue开发:vue2.0父子组件及非父子组件之间的通信方法
- [NOIP模拟]beautiful
- 密码学笔记3 群论,有限域
- TP3.2 简易封装增、删、改、查、上传、分页、操作日志
- 认识WebSocket原理
- centos 6.8 安装cmake 2.8.8 报错
- 人工智能: 自动寻路算法实现(二、深度优先搜索)
- 条件查询的时候,查询完成之后,不用在将选择的数据回传到页面,用于判断,让选择的option处于SELECT状态。
- leetcode 541. Reverse String II
- opencv图像处理之在手机上实现背景虚化
- poj 1753
- parse_url的用法,以及用途