首頁  >  文章  >  資料庫  >  如何運用PHP進行資料庫操作類別?

如何運用PHP進行資料庫操作類別?

慕斯
慕斯原創
2021-06-22 11:12:053579瀏覽

上篇文章為大家介紹了《PHP高階實戰-檔案上傳類別的成員屬性有哪些? 》,本文繼續介紹如何用PHP進行資料庫操作類別有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

如何運用PHP進行資料庫操作類別?

PHP高階實戰-資料庫操作類別

#主流php開發框架

父類別(Mode1類別)

1、sql語句回顧

insert into user (name, age, money) values (' abc', 18, 1000) ;
update user set age=20, money=1500 where id=1;
delete from user where id=2;
select * from user where id=3 group by . . . having . . . order by ..limit

我們還是以程式碼為例,新建一個文件,定義一個class類別,當我們在封裝model類別的時候我們需要加入成員變量,比如說主機名,用戶名,密碼,數據庫名,字符集以及數據表前綴,接著我們連接數據庫成功之後會返回一個資源,而我們需要把資源保存成成員變量,這樣我們在其他地方使用的時候就非常方便了,因此我們加上資料庫連接資源以及資料表名(自己可以指定表名)我們在調試資料庫的時候經常會出現一些錯誤,因此我們調試錯誤都需要SQL語句,操作數組,存放的就是所有的查詢條件;

具體程式碼如下:

<?php
class Model
{
  //主机名.
  protected $host;
  //用户名.
  protected $user;
  //密码
  protected $pwd;
  //数据库名
  protected $dbname;
 //字符集
 protected $charset;
 //数据表前缀
 protected $prefix;
 //数据库连接资源
 protected $link;
 //数据表名     这里可以自己指定表名
 protected $tableName ;
 //sql语句
 protected $sql;
 //操作数组存放的就是所有的查询条件
 protected $options;
}

因為有很多成員變量,因此我們需要對她初始化,

//filed方法

//table方法

/ /where方法

//group方法

/ /having方法

//order方法

//limit方法

,我們可以根據這些方法吧SQL語句拼接出來,只有這樣我們才能實作查詢。我們查詢的時候需要兩個方法,一個是query一個是exec方法;程式碼如下:

 //构造方法,对成员变量进行初始化
 function_construct()
 {
 }
我们构造完之后,上面刚刚写的代码都需要初始化,太多,我们可以传递一个数组进来,
  function_construct( $config)
  {
  //对成员变量一一进行初始化
  $this->host = $config[&#39;DB_HOST&#39;];
  $this->user = $config[&#39;DB_USER&#39;];
  $this->pwd = $config[&#39;DB_PWD&#39;] ;
  $this ->dbname = $config[&#39;DB_NAME &#39; j;
  $this->charset = $config[&#39;DB_CHARSET&#39;] ;
  $this->prefix = $config[&#39;DB_PREFIX&#39;] ;
  }
  紧接着我们需要连接数据库:
  //连接数据库
  $this->link = $this ->connect();
}
protected function connect( )
{
  $link = mysqli_connect($this->host, $this->user,$this->pwd) ; .
if (!$link) {
die(&#39;数据库连接失败&#39;);
  }

#//選擇資料庫

mysqli_select_db($link, $this->dbname);

//設定字元集

mysqli_set_charset($link, $this->charset);

//傳回連線成功的資源

return $link;
 }

推薦教學:《MySQL教學

以上是如何運用PHP進行資料庫操作類別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn