PHP簡(jiǎn)單數(shù)據(jù)庫(kù)操作類實(shí)例【支持增刪改查及鏈?zhǔn)讲僮鳌?/h1>
更新時(shí)間:2016年10月10日 09:38:24 作者:夏天的風(fēng)
這篇文章主要介紹了PHP簡(jiǎn)單數(shù)據(jù)庫(kù)操作類實(shí)例,支持增刪改查及鏈?zhǔn)讲僮?非常適合小型項(xiàng)目的開(kāi)發(fā)使用,末尾還提供了完整實(shí)例的下載地址,需要的朋友可以參考下
本文實(shí)例講述了PHP簡(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)讲僮鳎a不到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();
完整實(shí)例代碼點(diǎn)擊此處本站下載。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+mysql數(shù)據(jù)庫(kù)操作入門教程》、《PHP基本語(yǔ)法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP實(shí)現(xiàn)的連貫操作、鏈?zhǔn)讲僮鲗?shí)例
- PHP三種方式實(shí)現(xiàn)鏈?zhǔn)讲僮髟斀?/a>
- PHP對(duì)象鏈?zhǔn)讲僮鲗?shí)現(xiàn)原理分析
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯暮诵乃枷?/a>
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯脑碓斀?/a>
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯娜N方法詳解
- php類自動(dòng)裝載、鏈?zhǔn)讲僮?、魔術(shù)方法實(shí)現(xiàn)代碼
- PHP封裝類似thinkphp連貫操作數(shù)據(jù)庫(kù)Db類與簡(jiǎn)單應(yīng)用示例
- thinkPHP5框架數(shù)據(jù)庫(kù)連貫操作之cache()用法分析
- thinkphp連貫操作實(shí)例分析
- php鏈?zhǔn)讲僮鞯膶?shí)現(xiàn)方式分析
相關(guān)文章
-
PHP實(shí)現(xiàn)定時(shí)生成HTML網(wǎng)站首頁(yè)實(shí)例代碼
做靜態(tài)頁(yè)面的時(shí)候增加這個(gè)功能非常不錯(cuò),大家看下實(shí)現(xiàn)代碼 2008-11-11
-
php正則提取html圖片(img)src地址與任意屬性的方法
下面小編就為大家?guī)?lái)一篇php正則提取html圖片(img)src地址與任意屬性的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧 2017-02-02
-
php使用curl打開(kāi)https網(wǎng)站的方法
這篇文章主要介紹了php使用curl打開(kāi)https網(wǎng)站的方法,涉及php使用curl連接網(wǎng)站及獲取信息的相關(guān)技巧,需要的朋友可以參考下 2015-06-06
-
PHP實(shí)現(xiàn)根據(jù)設(shè)備類型自動(dòng)跳轉(zhuǎn)相應(yīng)頁(yè)面的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)根據(jù)設(shè)備類型自動(dòng)跳轉(zhuǎn)相應(yīng)頁(yè)面的方法,是非常實(shí)用的功能,需要的朋友可以參考下 2014-07-07
-
PHP引擎php.ini參數(shù)優(yōu)化深入講解
這篇文章主要介紹了PHP引擎php.ini參數(shù)優(yōu)化深入講解,php.ini設(shè)置可以提高php的響應(yīng)速度,有感興趣的同學(xué)可以學(xué)習(xí)下 2021-03-03
-
php注冊(cè)系統(tǒng)和使用Xajax即時(shí)驗(yàn)證用戶名是否被占用
這篇文章主要為大家詳細(xì)介紹了php注冊(cè)系統(tǒng)和使用Xajax即時(shí)驗(yàn)證用戶名是否被占用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下 2017-08-08
最新評(píng)論
本文實(shí)例講述了PHP簡(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)讲僮鳎a不到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();
完整實(shí)例代碼點(diǎn)擊此處本站下載。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+mysql數(shù)據(jù)庫(kù)操作入門教程》、《PHP基本語(yǔ)法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP實(shí)現(xiàn)的連貫操作、鏈?zhǔn)讲僮鲗?shí)例
- PHP三種方式實(shí)現(xiàn)鏈?zhǔn)讲僮髟斀?/a>
- PHP對(duì)象鏈?zhǔn)讲僮鲗?shí)現(xiàn)原理分析
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯暮诵乃枷?/a>
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯脑碓斀?/a>
- PHP實(shí)現(xiàn)鏈?zhǔn)讲僮鞯娜N方法詳解
- php類自動(dòng)裝載、鏈?zhǔn)讲僮?、魔術(shù)方法實(shí)現(xiàn)代碼
- PHP封裝類似thinkphp連貫操作數(shù)據(jù)庫(kù)Db類與簡(jiǎn)單應(yīng)用示例
- thinkPHP5框架數(shù)據(jù)庫(kù)連貫操作之cache()用法分析
- thinkphp連貫操作實(shí)例分析
- php鏈?zhǔn)讲僮鞯膶?shí)現(xiàn)方式分析
相關(guān)文章
PHP實(shí)現(xiàn)定時(shí)生成HTML網(wǎng)站首頁(yè)實(shí)例代碼
做靜態(tài)頁(yè)面的時(shí)候增加這個(gè)功能非常不錯(cuò),大家看下實(shí)現(xiàn)代碼2008-11-11php正則提取html圖片(img)src地址與任意屬性的方法
下面小編就為大家?guī)?lái)一篇php正則提取html圖片(img)src地址與任意屬性的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02php使用curl打開(kāi)https網(wǎng)站的方法
這篇文章主要介紹了php使用curl打開(kāi)https網(wǎng)站的方法,涉及php使用curl連接網(wǎng)站及獲取信息的相關(guān)技巧,需要的朋友可以參考下2015-06-06PHP實(shí)現(xiàn)根據(jù)設(shè)備類型自動(dòng)跳轉(zhuǎn)相應(yīng)頁(yè)面的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)根據(jù)設(shè)備類型自動(dòng)跳轉(zhuǎn)相應(yīng)頁(yè)面的方法,是非常實(shí)用的功能,需要的朋友可以參考下2014-07-07PHP引擎php.ini參數(shù)優(yōu)化深入講解
這篇文章主要介紹了PHP引擎php.ini參數(shù)優(yōu)化深入講解,php.ini設(shè)置可以提高php的響應(yīng)速度,有感興趣的同學(xué)可以學(xué)習(xí)下2021-03-03php注冊(cè)系統(tǒng)和使用Xajax即時(shí)驗(yàn)證用戶名是否被占用
這篇文章主要為大家詳細(xì)介紹了php注冊(cè)系統(tǒng)和使用Xajax即時(shí)驗(yàn)證用戶名是否被占用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08