在windows / xampp下使用postgresql和php

我试图用PHP的postgres ,但Apache无法加载扩展。

我在用着:

Windows 7(64位)与xampp,我有php版本5.4.7我已经设置了postgres,其他应用程序可以访问数据库。

当我在我的php.ini中取消注释以下行时

 extension=php_pdo_mysql.dll extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll 

我在php-error-log中得到一些错误:

[22-Jun-2013 13:15:22 UTC] PHP警告:PHP启动:无法加载dynamic库'C:\ xampp \ php \ ext \ php_pdo_pgsql.dll' – Das angegebene Modul wurde nicht gefunden。 在第0行的未知

但path是正确的,文件在那里。

经过一番研究,我将这行添加到了我的http.conf中:

 LoadFile "C:/Program Files/PostgreSQL/9.2/bin/libpq.dll" 

但是,无论我把这条线,Apache服务无法启动了。 所以我删除了该行。

我也尝试将这两个path添加到我的pathvariables:

 C:\Program Files\PostgreSQL\9.2\bin C:\xampp\php\ext 

现在错误改变了

在第0行的未知

一切都在同一台本地机器上运行。 而使用Linux /独立服务器不是一种select。

我的phpinfo()不显示任何postgres相关的东西。

我希望有人知道如何解决这个问题,Google根本不帮我。

好吧,不知何故,我终于解决了这个问题:

我重新安装xampp和postgres,但使用postgres 32位版本(64位版本也应该工作,但我想确保)

然后我再次在php.ini启用了扩展:

 extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll extension=php_pgsql.dll 

我得到了错误,该文件还没有找到(php_error_log)。

看完这个之后:

http://postgresql.1045698.n5.nabble.com/pgAgent-installation-fails-LIBPQ-DLL-is-missing-PostgreSQL-9-0-2-x64-2008-Windows-server-x64-td3351434.html

我从postgres 8.4下载了libpq.dll ,并将其复制到apache / bin和postgres / lib(从那里取代了dll)。

在我的路径变量中仍然有C:\xampp\php\ext\ ,但是它应该没有这个部分。

我在这个问题上工作了3天,希望能够帮助别人更快地开展工作。

另一个解决方案是复制

 c:/xampp/php/libpq.dll 

 c:/xampp/apache/bin/ 

资源