您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“PHP如何實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)庫(kù)操作類”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“PHP如何實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)庫(kù)操作類”這篇文章吧。
具體如下:
在進(jìn)行項(xiàng)目開(kāi)發(fā)時(shí),數(shù)據(jù)庫(kù)是必不可少的東西了。但是很多時(shí)候卻又對(duì)數(shù)據(jù)庫(kù)SQL語(yǔ)句的繁雜而感到頭疼。提供一個(gè)我自己使用的數(shù)據(jù)庫(kù)操作類(模型Model),供大家使用。支持增、刪、改、查,支持鏈?zhǔn)讲僮?,代碼不到100行,非常小巧方便,很適合小項(xiàng)目的快速部署使用。
/** * * @Authot: summer * * @E-mail: wenghang1228@me.com * * @Data: 2015-02-06 * * @Project: 數(shù)據(jù)庫(kù)操作類Model * * @Version:1.0 * * @版權(quán)所有:夏天的風(fēng)————記錄夏天對(duì)技術(shù)的追求與生活的熱愛(ài) * * @網(wǎng)址: http://www.xtwind.com **/ class Model{ public $field; public $tabname; public $where; public $order; public $limit; //構(gòu)造函數(shù),鏈接數(shù)據(jù)庫(kù),給表賦值 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限制條數(shù) function limit($limit){ $this->limit="limit ".$limit; return $this; } //組合和執(zhí)行select語(yǔ)句 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; } //組合和執(zhí)行insert語(yǔ)句 function insert($post){ //數(shù)據(jù)庫(kù)插入操作,接收數(shù)組 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; } } //組合和執(zhí)行delect語(yǔ)句 function delect(){ $sql="delect from {$this->tabname} {$this->where}"; if (mysql_query($sql)) { return mysql_affected_rows(); }else{ return false; } } //組合和執(zhí)行updata語(yǔ)句 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; } } //從表中取一行數(shù)據(jù) 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; } //獲取總行數(shù) 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類對(duì)象工廠 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如何實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)庫(kù)操作類”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。