這篇文章主要為大家展示了“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 **/ 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如何實現簡單數據庫操作類”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。