一、安装instantclient
直接解压、并设置好环境变量即可,具体可参考以前的一篇博文:
http://blog.sina.com.cn/s/blog_54dd80920101d8mf.html
sudo ln -s libclntsh.so.11.1 libclntsh.so
sudo ln -s libocci.so.11.1 libocci.so
二、装oci8扩展
1、去http://pecl.php.net/package/oci8 下载最新源代码
2、解压tar xzvf oci8-2.0.8.tgz
3、cd oci8-2.0.8/ 并执行/opt/php/bin/phpize
4、./configure --with-oci8=shared,instantclient,/opt/ora11g/instantclient_11_2
5、make
6、sudo make install 这时oci8扩展模块已经安装到PHP中了,我的模块路径:/opt/php/lib/php/extensions/no-debug-zts-20121212/oci8.so
7、 修改/opt/php/lib/php.ini加入extension=oci8.so;
三、Restart Apache.
sudo service apachectl restart
四、测试
![Linux下利用instantclient实现PHP远程连接Oracle Linux下利用instantclient实现PHP远程连接Oracle](https://i-blog.csdnimg.cn/blog_migrate/a4c26d1e5885305701be709a3d33442f.gif)
五、中文乱码问题
PHP页面中文问题:
加
header("Content-Type: text/html;charset=utf-8");
数据库编码导致中文问题:把o
ci_connect
('scott','tiger',"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.110)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME = orcl)))");改为oci_connect('scott','tiger',"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.110)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME = orcl)))",'utf8');
六、装PDO扩展
1、进入PHP源码目录
2、
cd
ext/pdo_oci
3、执行/opt/php/bin/phpize
4、
./configure --with-php-config=/opt/php/bin/php-config --with-pdo-oci=instantclient,/opt/ora11g/instantclient_11_2,11.2.0.4.0
5、make
6、sudo make install 这时pdo_oci.so扩展模块已经安装到PHP中了,我的模块路径:/opt/php/lib/php/extensions/no-debug-zts-20121212/pdo_oci.so
7、 修改/opt/php/lib/php.ini加入extension=pdo_oci.so;