首页
Linux教程
MongoDB教程
FTP教程
Apache教程
Nginx
jQuery
Redis
MySQL
PostgreSQL教程
PHP教程
Elasticsearch

PHP教程

目录
PHP教程

操作PostgreSQL数据库


PHP要访问PostgreSQL,必须安装2个PostgreSQL的扩展库文件,pdo_pgsql和pgsql扩展。

phpinfo();如果你的PHP环境出现上图红框的这个2个扩展,就表示你的PHP可以访问PostgreSQL数据库。如果没有出现,请按以下步骤设置。

pgsql扩展

进入PHP源码自带的pgsql源码目录,就是我们下载PHP安装文件解压后的那个目录。

[root@iZ28lcmnq9qZ /usr/bin]#cd /usr/local/src/php-7.4.2/ext/pgsql

实际是要追加PHP编译时的项目,要重新生成一个"configure"文件,通过"phpize"文件来生成"configure"文件。

找到phpize位置

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#find / -name phpize

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#/usr/local/php/bin/phpize

经过以上命令,就在当前目录下生成了文件"configure"。

用文件"php-config"追加PHP的配置配置,php-config一般和phpize在同级目录。

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#./configure --with-php-config=/usr/local/php/bin/php-config

编译、安装

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#make
[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20190902

上面提示我们要的扩展文件“pgsql.so”已经生成在目录/usr/local/php/lib/php/extensions/no-debug-zts-20190902/

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]# cd /usr/local/php/lib/php/extensions/no-debug-zts-20190902
[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#ls

pdo_pgsql

进入PHP源码自带的pgsql源码目录,就是我们下载PHP安装文件解压后的那个目录。

[root@iZ28lcmnq9qZ /usr/bin]#cd /usr/local/src/php-7.4.2/ext/pdo_pgsql

实际是要追加PHP编译时的项目,要重新生成一个"configure"文件,通过"phpize"文件来生成"configure"文件。

找到phpize位置

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]#find / -name phpize

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]#/usr/local/php/bin/phpize

经过以上命令,就在当前目录下生成了文件"configure"。

用文件"php-config"追加PHP的配置配置,php-config一般和phpize在同级目录。

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]#./configure --with-php-config=/usr/local/php/bin/php-config

编译、安装

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]#make
[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20190902

上面提示我们要的扩展文件"pdo_pgsql.so"已经生成在目录/usr/local/php/lib/php/extensions/no-debug-zts-20190902/

[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pdo_pgsql]# cd /usr/local/php/lib/php/extensions/no-debug-zts-20190902
[root@iZ28lcmnq9qZ /usr/local/src/php-7.4.2/ext/pgsql]#ls

至此,我们需要的2个扩展文件pdo_pgsql.so和pgsql.so已经生成。

将2个扩展文件加入到php.ini文件。

重启PHP,查看phpinfo()。

看到红框显示的这个2个扩展,就可以在PHP里操作PostgreSQL数据库。