Мне нужно знать, допустимо ли написанное мной расширение PDO как синтаксически, так и семантически. Я выполнял var_dumping () мои переменные соединения, и хотя переменные передаются в конструктор (с правильными значениями), я не могу получить что-либо из моей базы данных.
Я исследовал класс PDO в руководстве по PHP, и из того, что я обнаружил, класс, который я использую, практически идентичен классу расширения, указанному в разделе примеров на странице вики.
Вот мой код:
class DBConnector extends PDO
{
private $host;
private $username;
private $password;
private $db;
private $dns;
public function __construct($host, $username, $password, $db)
{
$this->host = $host;
$this->username = $username;
$this->password = $password;
$this->db = $db;
$this->dns = "mysql:dbname=".$this->db.";host=".$host;
$connection = parent::__construct($this->dns, $this->username, $this->password);
}
}
А вот тестовый запрос, который возвращает массив с ... ничем внутри него. В базе данных есть данные, поэтому, очевидно, что-то не так.
function testQuery()
{
global $connection;
$query = "
SELECT * FROM users
";
$stmt = $connection->prepare($query);
$result = $stmt->fetchAll();
}
Я что-то не так делаю?