2017-03-07 46 views
0

我試圖找到一種方法,其執行以下操作PHP - mysqli的連接打開和關閉採用面向對象的方式 - 庫MySQLi

  • 面向對象的方式
  • 有效地關閉連接
  • 關閉連接反正

    <?php 
    
    define("HOST", "localhost"); 
    define("USER", "username"); 
    define("PASS", "password"); 
    define("DBNM", "database"); 
    
    class ConnectionTest extends mysqli { 
    
        private $link; 
    
        function __construct() { 
         $this->link = new mysqli(HOST, USER, PASS, DBNM); 
        } 
    
        function getLink(){ 
         return $this->link; 
        } 
    
        function __destruct() { 
         mysqli_close($this->link) 
        } 
    } 
    ?> 
    

,試圖讓到m ÿ目標

  1. 面向對象的方式 - 使用一類
  2. 閉合連接有效地 - 定義一個函數來關閉連接
  3. 反正關閉連接 - 設置相同的功能是這個類的析構函數

由於我是新來的PHP,我想知道:

  • 這是技術是否合適?
  • 會發生什麼併發症?或者這種技術有什麼缺點?
  • 此代碼是否需要改進?
+0

無論如何,連接在腳本結束時關閉。 – Qirel

+0

@Qirel謝謝,我知道我的課是完全沒用的。由於MySQLi類做同樣的事情。 –

回答

1

坦率地說,你的這一類沒有什麼意義,因爲它有效地複製了mysqli。所有你想實現的東西,已經在mysqli中實現了:

  1. 面向對象的方式 - Mysqli已經是一個類。
  2. 在mysqli中有一個函數來關閉一個連接以及
  3. 這是關閉一個連接有效。

所以我看不出你的班級比mysqli更好。

+0

從我的回覆中,我假設MySQLi會自動關閉連接,並且是面向對象的。所以這個班沒用。無論如何,這篇文章僅供參考。再次感謝。 –