php:从自己的mysli类获取数据库名称

Fux*_*uxi 5 php mysqli class wrapper

我使用以下语法为mysqli创建了一个包装类:

class mydb extends mysqli
{
     ....
}
Run Code Online (Sandbox Code Playgroud)

我正在创建如下的实例:

$conn = new mydb($host $username , $pass, $dbname);
Run Code Online (Sandbox Code Playgroud)

我想知道 - 我如何$dbname从班级内部进入?我正在寻找功能的mysqli等价物mysql_db_name().

Aar*_*ong 15

您可以在自己的类中使用此SQL查询:

SELECT database() AS the_db
Run Code Online (Sandbox Code Playgroud)

这应该显示您选择的当前数据库.

  • 在我看来,这应该是最好的答案 (3认同)

Cra*_*tic 5

您总是可以使自己的类具有一个字段变量,该字段变量引用mysqli对象和数据库名称。

class MyDatabase {

    public $dbi;
    public $dbname;

    function __construct($host, $user, $pass, $db) {
        $this->dbi = new mysqli($host, $user, $pass, $db);
        $this->dbname = $db;
    }

}

$mydb = new MyDatabase($host, $user, $pass, $db);

//Access db name that was stored during connection
echo $mydb->dbname;
Run Code Online (Sandbox Code Playgroud)