本文實例講述了PHP簡單數據庫操作類。分享給大家供大家參考,具體如下:
在進行項目開發時,數據庫是必不可少的東西了。但是很多時候卻又對數據庫SQL語句的繁雜而感到頭疼。提供一個我自己使用的數據庫操作類(模型Model),供大家使用。支持增、刪、改、查,支持鏈式操作,代碼不到100行,非常小巧方便,很適合小項目的快速部署使用。
/** * * @Authot: summer * * @E-mail: [email protected] * * @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+mysql數據庫操作入門教程》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php面向對象程序設計入門教程》、《PHP網絡編程技巧總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。