この記事の例では、PHP の単純なデータベース操作クラスについて説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
プロジェクトを開発するとき、データベースは不可欠です。しかし、データベース SQL ステートメントの複雑さのせいで頭が痛くなることがよくあります。私自身が使っているデータベース操作クラス(Model)を、みんなが使えるように提供します。追加、削除、変更、クエリをサポートし、チェーン操作をサポートします。コードは 100 行未満であり、小規模なプロジェクトの迅速な展開に非常に適しています。
/** * * @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 プログラミングのすべての人に役立つことを願っています。
PHP の簡単なデータベース操作例に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。