OCI81.4扩展包含在PHP5.3、PHP5.4和PHP5.5中。也可从“PECL”获得。更新的OCI8 2.0版本只能从»PECL获得。OCI8 1.4需要Oracle 12c、11g、10g或9iR2客户端库,并将安装在PHP4.3.9以后的版本上。OCI8 2.0需要Oracle 12c、11g或10g客户端库,并将安装在PHP5.2以后的版本上。
如果Oracle数据库与PHP在同一台机器上,那么数据库软件已经包含了必要的库。当PHP在不同的机器上时,使用free»Oracle即时客户端库。
要使用Oracle Instant Client,请安装basic或basiclite Oracle Instant Client ZIP文件或RPM包。从源代码构建PHP时,还要安装sdk ZIP文件或devel RPM包。
必须使用与OCI8构建时使用的Oracle库相同或更新的版本运行PHP。
在Windows上,php_oci8 DLL需要10gR2或更高版本的Oracle客户端库。在PHP 5.3到php5.3.5(包括php5.3.5)中,php_oci8_11gdll需要Oracle 11gR1或更高版本的客户端库。从PHP 5.3.6开始,PHP_oci8_11g dll需要Oracle 11gR2或更高版本的客户端库。PECL中的php_oci8_12c DLL需要Oracle 12cR1客户端库。对于某些版本的即时客户端,您可能还需要mfc71.dll和msvcr71.dll库。
Note:
如果OCI8使用9iR2客户端库,则PHP可以连接到Oracle数据库8i、9iR2、10g或11g。如果OCI8使用10gR2客户端库,则数据库可以是9iR2、10g、11g或12c。如果OCI8使用11g客户端库,则数据库可以是9iR2、10g、11g或12c。如果OCI8使用12c客户端库,则数据库可以是10gR2、11g或12c
只有在使用最新版本的Oracle客户端库和数据库时,才提供完整的OCI8功能支持
安装
使用OCI8配置PHP
在配置OCI8之前,请查看前面的需求部分。要启用OCI8扩展,请使用--with-oci8选项配置PHP。
在启动web服务器之前,OCI8通常需要几个Oracle环境变量(见下文)来定位库、指向配置文件并设置一些基本属性,如Oracle库使用的字符集。变量应该在任何PHP进程开始之前设置。
PHP应该使用与配置时相同或更新的主要版本的Oracle库运行。例如,如果使用Oracle 11.2库构建OCI8,那么PHP也应该使用oracle11.2库部署和运行。