php中成功打开pgsql扩展(windows下)

来源:互联网 发布:经传软件账号密码 编辑:程序博客网 时间:2024/05/29 14:45
方法一
PostgreSQL在PHP上的安装……
都说PostgreSQL比MySQL要爽不少,那咱就试试呗。用了很多年的MySQL,本以为PostgreSQL也是差不多的东西,安装和使用的过程中才发现,事情不是想象的那么简单。

安装好后PostgreSQL后,在PHP.INI的扩展模块中将php_pgsql.dll打开后,运行phpinfo(),发现pgsql的影子怎么都出不来。折腾了很久,仍然未果。在网上搜索半天才,通过查看php_pgsql.dll文件的二进制内容,发现其需要一个名为libpq.dll的PostgreSQL库。这个libpq.dll在哪里呢,找破了头才在PostgreSQL安装目录的bin文件夹中发现。那么,把它复制到Windows系统目录下,运行phpinfo()瞅瞅……

FK,还是没有出来。然后开始查看libpq.dll的二进制内容,发现它调用了大量的bin文件夹中的DLL库……原来如斯,那么一不做二不休,将PostgreSQL的bin目录加到Windows系统的环境变量PATH里去(与mysql的区别)。多次重启apache

然后,这个世界清静了,我的PostgreSQL静静地躺在phpinfo()里鸟。

据说安装PostgreSQL的时候会自动将bin目录加到系统的PATH中?也许是我安装的问题,有些家伙说他们直接安装PG和PHP,一路下来没有任何问题,那确实是咱太衰鸟……

方法二
首先,打开这个扩展就费了不少事,然后php读取含中文的字段,得到的是乱码。感觉不太好用。

如何打开pgsql扩展?

1)去掉php.ini中;extension=php_pgsql.dll之前的分号;
2)拷贝php根目录下的 libpq.dll 到system32下;
3)将postgresql的bin目录下的如下文件拷贝到system32( windows\system32 目录下)下:
comerr32.dll
gssapi32.dll
k5sprt32.dll
krb5_32.dll
libeay32.dll
libiconv2.dll
libintl3.dll
libpq.dll
ssleay32.dll
注意:我就是因为少了这一步,导致pgsql扩展始终打不开,后来看了CSDN论坛中某网友的提示才搞定。
原文地址:http://topic.csdn.net/u/20100303/16/9b655120-533d-4296-a93c-460e7eff17db.html
4)重启apache。
0 0