如何在扩展的mysqli类中设置连接标志?

时间:2014-10-02 07:41:07

标签: php mysqli

当你构造一个mysqli对象时,它会打开一个连接,但是构造函数没有"标记" mysqli :: real_connect的字段。

使用面向对象的mysqli方法时如何设置标志?通常我可以使用mysqli :: init创建mysqli对象而不连接,但是我扩展了mysqli类,这将返回基类的实例。

1 个答案:

答案 0 :(得分:0)

认真。实际上,在扩展mysqli类"时标记为"面向对象样式的real_connect文档中有一个特定的例子。我第一次错过了。

http://php.net/manual/en/mysqli.real-connect.php

class foo_mysqli extends mysqli {
    public function __construct($host, $user, $pass, $db) {
        parent::init();

        // ... init settings

        if (!parent::real_connect($host, $user, $pass, $db)) {
            die('Connect Error (' . mysqli_connect_errno() . ') '
                . mysqli_connect_error());
        }
    }
}