PDOException'找不到驱动程序'和display_errors窘境

时间:2013-09-02 08:12:08

标签: php postgresql pdo

我通常会以“警告错误”的方式发展。但是,最近我重新安装了我的开发工具,发现我没有像往常一样打开所有警告和错误。

所以,在我的php.ini文件中,我重新打开了以下设置:

Development Value: E_ALL | E_STRICT

现在我收到了这个错误:

Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\wamp\www\project\database_class_example.php

我正在使用PDO并连接到PostgreSQL数据库。我以前遇到过这个错误,但从那时起它就运转了。这是我的难题:

如果我关闭警告和错误,它将正常工作并连接到数据库。如果我打开警告和错误,则不会。

这怎么可能,如果它找不到驱动程序,肯定它永远不会工作!

它抱怨这行代码:

parent::__construct($this->data_source_name, $this->username, $this->password);

这是我的数据库类,它扩展了PDO。

$ data_source_name 是一个预先构建的字符串,包含数据库引擎名称主机数据库名称

$ username $ password 显然包含用户名和密码。

请记住,这是有效的。如果我关闭display_errors,则此代码可以正常工作。

1 个答案:

答案 0 :(得分:1)

虽然这个问题听起来很奇怪,但我能猜到的唯一原因是你在database_class_example.php中有 unused PDO连接。我很乐意提供在哪里查找的行号,但出于某种原因,您从引用的错误消息中省略了它。

文件名也是如此。