用于DB连接的类,如何使用

时间:2014-11-05 13:42:14

标签: php class

我正在玩PHP中的课程,但却无法找到正确的方法。

我有以下课程:

class db_connection {
    private $dbc;


    public function __construct()
    {
        $this->dbc = new mysqli(HOST_ONE, USER_ONE, PASS_ONE, DB_ONE) or die ($this->dbc->error);

    }

    public function getDbc()
    {
        return $this->dbc;
    }

}

并尝试像这样运行:

$db = new db_connection();
$db->getDbc();

// TESTQUERY
$abfrage = "SELECT * FROM databases";
$result = $db->query($abfrage);
while ($row = $result->fetch_assoc()) {
    echo $row['id'];
}

设置了HOST_ONE等,虽然我已启用error_reporting( E_ALL );

但我没有收到任何错误消息

我以多种不同的方式尝试过它,但它们都没有起作用......

有人可以推动我如何使用这个简单的课程吗?

2 个答案:

答案 0 :(得分:2)

我认为你应该像以下一样使用它:

$db_con = new db_connection();
$db = $db_con->getDbc();

函数getDbc()返回您需要的对象。因此你必须将它发送到$ db变量,才能得到它。执行该方法不会将其值归因于" self"($ db_con)但返回一个值。

答案 1 :(得分:1)

你应该使用这样的代码:

$dbClass = new db_connection();
$db = $dbClass->getDbc();
$db->query("SELECT * FROM databases");

$dbClass = new db_connection();创建连接并将db_connection类实例返回给$dbClass。现在您已连接到数据库,使用$db = $dbClass->getDbc();获取连接对象本身并使用它执行任何与数据库相关的操作。