這篇文章主要為大家展示了“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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。