簡體   English   中英

自動關閉與mysql的php連接

[英]Closing php connections to mysql automatically

我的php腳本中與mysql的連接過多。 連接沒有關閉-我可能已經忘記在代碼中的某些位置關閉了。

有什么方法可以定義sql,以便在腳本結束時自動關閉所有與服務器的php連接?

您可以定義一個類來管理mysql這樣的連接

class MysqlConnection
{
    private $connection;

    public function __construct()
    {
        $this->connection = mysqli_connect();
    }

    public function __destruct()
    {
        mysqli_close($this->connection);
    }

}

當腳本運行到最后時,php將銷毀所有對象,然后自動調用析構函數。 因此,連接也可以關閉。

如果您不使用持久連接,則腳本結束時,PHP會自動關閉與MySQL的所有連接。

手冊

PHP腳本完成執行后,打開的非持久MySQL連接和結果集將自動銷毀。

我發現了問題。 我沒有使用持久連接,因此應該在腳本結束后關閉連接。

但是,我正在使用名為“ prototype.js”的第三方代碼。 我不知道為什么,但是它阻止了我的代碼關閉php連接。 在刪除以下行后,一切正常。

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/prototype/1.7.3.0/prototype.js"></script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM