문제

I'm deploying a PHP application that connects to an Oracle 9i server using the OCI8 functions. I've installed the latest official binaries for Windows (PHP/5.3.2) in order to run it as Apache 2.2 module (i.e., the VB6+ts MSI installer). However, the OCI8 extension is no longer in the extension list: the only options to choose from are Oracle (10) and Oracle (11g).

The PHP manual says nothing about OCI8 being deprecated. Furthermore, there're no references to any Oracle 10 or 11 extensions :-?

Has OCI8 been renamed? What are those other extensions?

도움이 되었습니까?

해결책

The archive php-5.3.2-Win32-VC6-x86.zip from windows.php.net contains two oci8 module dlls, php_oci8.dll and php_oci8_11g.dll. You need either the 10g or 11g client for those to work.
http://docs.php.net/manual/en/oci8.requirements.php says:

On Windows, OCI8 needs client libraries from version 10gR2 or greater. With some versions of Instant Client you may additionally need mfc71.dll and msvcr71.dll libraries.
[...]
Note: If OCI8 uses 9iR2 or 10g client libraries, then PHP can connect to Oracle Database 8i, 9iR2, 10g or 11g. If OCI8 uses 11g client libraries, the database can be 9iR2, 10g or 11g.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top