关于mysqli 连接数不能正确释放的解决方案

/**
     * 析构函数
     */
    //解决重复链接的问题
    private $db_handler = null;



    function __destruct() {
        Log::logWrite($this->log_data, ‘db‘, ‘sql‘);

        if(!is_null($this->db_handler[$this->key_back])){
            $db_thread_id = $this->db_handler[$this->key_back]->thread_id;
            $this->db_handler[$this->key_back]->kill($db_thread_id);
            $this->db_handler[$this->key_back]->close();//断开数据库连接
            unset($this->db_handler);
        }

    }

    public function getDb(){
        if(is_null($this->db_handler[$this->key_back])){
            $this->db_handler[$this->key_back] = mysqli_connect($this->host, $this->username,$this->pwd,$this->databasename) or die("Could not connect: " . mysql_error() . "<br/>");
            $this->db_handler[$this->key_back]->query("SET names $this->charset");
        }
        return $this->db_handler[$this->key_back];
    }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。