每当我尝试连接到PHP存档中的PostgreSQL数据库时,PDO异常错误

PDO Exception error whenever I try to connecto to PostgreSQL database in PHP archive

提问人:maddog 提问时间:11/12/2023 更新时间:11/12/2023 访问量:43

问:

我正在尝试为 PostgreSQL 数据库中的一系列模型制作数据加载脚本。问题是我一直遇到这个PDO异常,表明在我的PHP存档所在的绝对路径中找不到驱动程序。

我查了一下,这是一个相当反复出现的问题,所以我尝试了一些事情: 首先,我从PHP下载页面下载了VS16 x86 Thread Safe (2023-Oct-24 21:55:38) 8.2 PHP包。我像往常一样安装。在我的 /php 目录(包含来自下载的所有数据并您进入 :C 磁盘的目录)中,我只有一个 php.ini 开发架构。据我了解,这个存档是php.ini存档或类似的东西的模型。

也就是说,是的,我已经尝试从 php.ini-development 存档中取消注释“extensions=pgsql”和“extensions=pdo_pgsql”行,并使用上述行创建一个 php.ini 存档,并使用未注释的行将 php.ini-development 存档重命名为 php.ini。我已经在所有这些存档中说明了扩展的绝对路径,但没有任何效果,我仍然收到同样该死的异常消息。我以为我可能是由于数据库,所以我切换到我本地创建的新数据库,使用具有完全访问权限/权限的新用户,但仍然遇到同样的问题。

这使我无法继续处理加载脚本。我不知道还能做什么,因为网上关于这个异常的信息很少。

PS:我使用的是Windows。

php sql postgresql

评论

0赞 rickdenhaan 11/12/2023
当您在 Windows 上安装 PHP 时,安装程序可能已将文件放入您的 Windows 文件夹中。如果你用它制作一个PHP文件,并在浏览器中打开它,你应该会得到一个页面,告诉你关于你的PHP配置的各种事情,包括加载了哪些文件(以及Postgres是否可用)。那里是否列出了任何可以编辑以启用扩展的 ini 文件?php.iniphpinfo().ini
0赞 hakre 11/12/2023
当您需要正在运行的安装时,在本地编辑 PHP 存档并没有太多用处。对于PHP本身的运行版本,所有PHP扩展和所有PHP脚本,它们必须是非存档形式,例如纯文件,而不是存档。编辑存档或存档中的文件与运行 PHP 无关。确保您按照为您的操作系统安装 PHP 的说明进行操作。通过编写存档,您的意思是文件吗?
0赞 maddog 11/12/2023
@rickdenhaan:我检查了一下,没有引用任何php.ini文件。
0赞 maddog 11/12/2023
@hakre:是的,我的意思是文件。我遵循了安装 PHP 的教程,在所有这些教程中,您只需将下载的 zip 文件解压缩到 C: 或 C:\Programs File 目录中的文件夹中。在解决此问题的所有其他帖子中,他们通过编辑php.ini文件解决了它,正如我所说。
1赞 Kazz 11/12/2023
异常的完整消息是什么?你走得很好,有两个php.ini文件,一个用于生产,一个用于开发,你应该根据您将使用该安装的环境将其中一个重命名为php.ini。您是作为 CLI 还是作为服务器运行脚本?如果是服务器,您需要重新启动该服务器以重新读取 php.ini 配置。顺便说一句,提供已加载的扩展列表,您也应该看看。phpinfo()

答: 暂无答案