只要我没有添加名称空间,一切正常。 Befor PDO我添加/,但是stil PDO对象是空的,为什么?我的代码怎么了?
完整样本:
<?php
namespace ProjectM;
class classPDO extends DbCore
{
public function get()
{
$this->dbLink = new \PDO('mysql:host=localhost;dbname=test_db', 'root', 'pass1312');
print_r($this->dbLink); // - always empty
$res = $this->dbLink('SELECT * FROM product')->fetchAll(PDO::FETCH_ASSOC);
print_r($res); // - always empty
}
错误:致命错误:调用未定义的方法Core \ classPDO :: dbLink()
为什么“$ this-&gt; dbLink”为空?感谢
答案 0 :(得分:0)
您的new \PDO
实例化是正确的。您的财产->dbLink
创建得很好。但是PDO实例没有实现__call
。因此,这不起作用:
$res = $this->dbLink('SELECT ...')
您仍然需要遵循PDO类的API
在您的情况下,请在引用PDO实例属性后使用->query
方法:
$res = $this->dbLink->query('SELECT ...')