PHP简单数据库操作类实例【支持增删改查及链式操作】
本文实例讲述了PHP简单数据库操作类。分享给大家供大家参考,具体如下:
在进行项目开发时,数据库是必不可少的东西了。但是很多时候却又对数据库SQL语句的繁杂而感到头疼。提供一个我自己使用的数据库操作类(模型Model),供大家使用。支持增、删、改、查,支持链式操作,代码不到100行,非常小巧方便,很适合小项目的快速部署使用。
/** * *@Authot:summer * *@E-mail:wenghang1228@me.com * *@Data:2015-02-06 * *@Project:数据库操作类Model * *@Version:1.0 * *@版权所有:夏天的风————记录夏天对技术的追求与生活的热爱 * *@网址:http://www.xtwind.com **/ classModel{ public$field; public$tabname; public$where; public$order; public$limit; //构造函数,链接数据库,给表赋值 function__construct($tabname){ mysql_connect(HOST,USER,PASSWORD); mysql_select_db(DBNAME); mysql_query("setnamesutf8"); $this->tabname=$tabname; } //组合字段 functionfield($field){ $this->$field=$field; return$this; } //组合where条件 functionwhere($where){ $this->where="where".$where; return$this; } //组合order排序条件 functionorder($order){ $this->order="orderby".$order; return$this; } //组合limit限制条数 functionlimit($limit){ $this->limit="limit".$limit; return$this; } //组合和执行select语句 functionselect($all=""){ if($all){ $sql="select{$all}from{$this->tabname}orderbyid"; }else{ $sql="select{$this->filed}from{$this->tabname}{$this->where}{$this->order}{$this->limit}"; } $rst=mysql_query($sql); while($row=mysql_fetch_assoc($rst)){ $rows[]=$row; } return$rows; } //组合和执行insert语句 functioninsert($post){//数据库插入操作,接收数组 foreach($postas$key=>$value){ $keys[]=$key; $vals[]="'".$valu."'"; } $keyStr=join(",",$keys); $valStr=join(",",$vals); $sql="insertinto{$this->tabname}($keystr)values()"; if(mysql_query($sql)){ returnmysql_insert_id(); }else{ returnfalse; } } //组合和执行delect语句 functiondelect(){ $sql="delectfrom{$this->tabname}{$this->where}"; if(mysql_query($sql)){ returnmysql_affected_rows(); }else{ returnfalse; } } //组合和执行updata语句 functionupdate($post){ foreach($psotas$key=>$value){ $sets[]="{$key}='{$val}'"; } $setStr=join(",",$sets); $sql="update{$this->tabname}set{$setStr}{$this->where}"; if(mysql_query($sql)){ returnmysql_affected_rows(); }else{ returnfalse; } } //从表中取一行数据 functionfind(){ if($this->order){ $sql="select*from{$this->tabname}{$this->order}limit1"; }else{ $sql="select*from{$this->tabname}orderbyidlimit1"; } $rst=mysql_query($sql); while($row=mysql_fetch_assoc($rst)){ $rows[]=$row; } return$rows; } //获取总行数 functiontotal(){ $sql="selectcount(*)from{$this->tabname}"; $rst=mysql_query($sql); if($rst){ $row=mysql_fetch_row($rst); return$row[0]; }else{ returnfalse; } } } //Model类对象工厂 functionM($tabname){ returnnewModel($tabname); } define("HOST","localhost"); define("USER","root"); define("PASSWORD","123456"); define("DBNAME","test") $user=newModel("user"); $user->field("id,name")->where("id=3")->order("iddesc")->limit("3")->select();
完整实例代码点击此处本站下载。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。