php - Windows PHP 上的 PostgreSQL 问题

标签 php postgresql wamp

我在 Windows 上使用 WAMP,它安装了 PHP、Apache 和 MySQL。

我现在正在研究需要 PostgreSQL 的新东西。当前安装不会为我做这件事,因为我不断收到这些错误:

Call to undefined function pg_query()

总是

undefined function

我已经为 Windows 安装了 PostgreSQL 8.3.7-1,添加了 php_pgsql.dllphp_pdo_pgsql.dll 甚至 libpq.dll ,在 postgreSQL 的 PHP 页面上有一条注释说 Windows 用户需要从 PHP 5.2.6 开始

仍然,我不断收到这些错误...

有人可以建议最好的行动方案吗?或者我应该只卸载 apache 和其他一切,然后分别重新安装每个组件?

最佳答案

xampp 不会“告诉”apache/php 使用哪个 php.ini。因此 php 使用其默认查找策略来查找 .ini 文件。如果您没有更改任何内容,这将是 apache 二进制文件所在目录中的那个,xampp/apache/bin/php.ini。您是否编辑了此文件并删除了 extension=php_pgsql.dll 之前的分号? 如有疑问,请咨询

echo 'php.ini: ', get_cfg_var('cfg_file_path');
您必须编辑哪个文件。
xampp 默认将 php 安装为模块,您必须重新启动 apache 才能让 php 再次读取 php.ini。 之后
echo extension_loaded('pgsql') ? 'yes':'no';
应该打印yes。如果它没有停止 apache 服务,请打开命令 shell,转到您的 xampp 目录并输入
apache_start.bat
这会将 apache 作为控制台应用程序启动,您可以在此控制台(而不是 Windows 的事件管理器)中看到启动错误。如果缺少 dll,您将看到一个消息框。

关于php - Windows PHP 上的 PostgreSQL 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/842483/

相关文章:

php - 如何在 Lithium 中查看查询文本?

取消设置数组后 PHP 内存使用量增加?

sql - 在更新表 A 后触发更新表 A 中的特定列

php - 我在 WAMP 安装的 httpd.conf 中输入了错误的信息...

php - Windows 和 Laravel 上的 Memcached

mysql - 在 WAMP 中恢复数据库

javascript - 如果 JavaScript 条件为 true,则执行 PHP 脚本

php - Worldpay 测试模式 - 测试错误响应不重定向到 resultC.html

ruby - 如何使用后续声明 postgresql json/jsonb 字段?

postgresql - 如何在 Postgres 9.5 中替换多个特殊字符