《PHP教程:PHP简单数据库操作类实例【支持增删改查及链式操作】》要点:
本文介绍了PHP教程:PHP简单数据库操作类实例【支持增删改查及链式操作】,希望对您有用。如果有疑问,可以联系我们。
PHP应用本文实例讲述了PHP简单数据库操作类.分享给大家供大家参考,具体如下:
PHP应用在进行项目开发时,数据库是必不可少的东西了.但是很多时候却又对数据库SQL语句的繁杂而感到头疼.提供一个我自己使用的数据库操作类(模型Model),供大家使用.支持增、删、改、查,支持链式操作,代码不到100行,非常小巧方便,很适合小项目的快速部署使用.
PHP应用/**** @Authot: summer** @E-mail: wenghang1228@me.com** @Data: 2015-02-06** @Project: 数据库操作类Model** @Version:1.0** @版权所有:夏天的风――――记录夏天对技术的追求与生活的热爱** @网址: http://www.xtwind.com**/class Model{ public $field; public $tabname; public $where; public $order; public $limit; //构造函数,链接数据库,给表赋值 function __construct($tabname){ mysql_connect(HOST,USER,PASSWORD); mysql_select_db(DBNAME); mysql_query("set names utf8"); $this->tabname=$tabname; } //组合字段 function field($field){ $this->$field=$field; return $this; } //组合where条件 function where($where){ $this->where="where ".$where; return $this; } //组合order排序条件 function order($order){ $this->order="order by ".$order; return $this; } //组合limit限制条数 function limit($limit){ $this->limit="limit ".$limit; return $this; } //组合和执行select语句 function select($all=""){ if ($all) { $sql="select {$all} from {$this->tabname} order by id"; }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语句 function insert($post){ //数据库插入操作,接收数组 foreach ($post as $key => $value) { $keys[]=$key; $vals[]="'".$valu."'"; } $keyStr=join(",",$keys); $valStr=join(",",$vals); $sql="insert into {$this->tabname}($keystr) values()"; if (mysql_query($sql)) { return mysql_insert_id(); }else{ return false; } } //组合和执行delect语句 function delect(){ $sql="delect from {$this->tabname} {$this->where}"; if (mysql_query($sql)) { return mysql_affected_rows(); }else{ return false; } } //组合和执行updata语句 function update($post){ foreach ($psot as $key => $value) { $sets[]="{$key}='{$val}'"; } $setStr=join(",",$sets); $sql="update {$this->tabname} set {$setStr} {$this->where} "; if (mysql_query($sql)) { return mysql_affected_rows(); }else{ return false; } } //从表中取一行数据 function find(){ if ($this->order) { $sql="select * from {$this->tabname} {$this->order} limit 1"; }else{ $sql="select * from {$this->tabname} order by id limit 1"; } $rst=mysql_query($sql); while ($row=mysql_fetch_assoc($rst)) { $rows[]=$row; } return $rows; } //获取总行数 function total(){ $sql="select count(*) from {$this->tabname}"; $rst=mysql_query($sql); if ($rst) { $row=mysql_fetch_row($rst); return $row[0]; }else{ return false; } }}//Model类对象工厂function M($tabname){ return new Model($tabname);}define("HOST","localhost");define("USER", "root");define("PASSWORD", "123456");define("DBNAME", "test")$user=new Model("user");$user->field("id,name")->where("id=3")->order("id desc")->limit("3")->select();
PHP应用完整实例代码点击此处本站下载.
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, LeCMS, ClassCMS, Fastadmin, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。