Pré-requis

OCI8 3.0 est incluse avec PHP 8. Elle est également disponible depuis » PECL. Pour PHP 7, utilisez OCI8 2.2 depuis » PECL. OCI8 requiert Oracle 10g ou bibliothèques cliente ultérieures.

Si la base de données Oracle est sur la même machine que PHP, le logiciel de base de données contient déjà les bibliothèques et en-têtes nécessaires. Lorsque PHP est sur une machine différente, utilisez les bibliothèques gratuites » Oracle Instant Client.

Pour utiliser Oracle Instant Client, installez le fichier compressé ZIP Basic ou Basic Light de Oracle Instant Client, le paquet RPM, ou le paquet DMG. Lors de la compilation de OCI8 depuis le code source, installez aussi le SDK de Instant Client.

Vous devez exécuter PHP avec la même version ou une version plus récente des bibliothèques clients Oracle utilisées pour construire OCI8.

Note:

L'interopérabilité standard du réseau client-serveur d'Oracle permet des connexions entre différentes versions de Oracle Client et Oracle Database. Pour des configurations certifiées voir la documentation Oracle Support ID ID 207303.1. En résumé, Oracle Client 19, 18 et 12.2 peuvent se connecter à Oracle Database 10.2 ou supérieur. Oracle Client 12.1 peut se connecter à Oracle Database 10.2 ou supérieur. Oracle Client 11.2 peut se connecter à Oracle Database 9.2 ou supérieur.

Note:

Le support de toutes les fonctionnalités OCI8 n'est disponible que lors de l'utilisation des versions les plus récentes des bibliothèques clientes Oracle mais aussi de la base de données la plus récente.

add a note add a note

User Contributed Notes 5 notes

up
5
Wilber
2 years ago
The OCI8 extension lets you access Oracle Database.

Use 'pecl install oci8' to install for PHP 8.1.

Use 'pecl install oci8-3.0.1' to install for PHP 8.0.

Use 'pecl install oci8-2.2.0' to install for PHP 7.

Use 'pecl install oci8-2.0.12' to install for PHP 5.2 - PHP 5.6.

Use 'pecl install oci8-1.4.10' to install for PHP 4.3.9 - PHP 5.1.

[username@hostname ~]# php -v
^ To see PHP version
up
5
Andi,post at rueckauer dot nospam dot ch
6 years ago
The provided link to the Oracle Instant Client is not valid anymore. Visit http://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html instead.
up
2
Rainer Perske
7 years ago
Oracle Instant Client provides its own LDAP library that may be incompatible to the LDAP library provided by the operating system.

Segmentation faults and other errors can happen if you load an OCI8 extension into a PHP containing LDAP support or if you load a PHP module with OCI8 into an Apache server with LDAP support.

But this depends heavily on the exact versions of operating system, system LDAP library, PHP,  OCI8, and other pieces of software involved.
up
1
charles dot fisher at arconic dot com
4 years ago
Oracle's development package includes an ldap.h file that causes compilation attempts of PHP to fail.

For the oracle-instantclient12.2-devel 64-bit RPM, this file is found in the following path:

/usr/include/oracle/12.2/client64/ldap.h

Rename this file to ldap.h-oracle.

After doing so, and assuming there are no other build problems, PHP will compile (even when ldap and oci are configured in the build).
up
0
sgfan at gmx dot net
7 years ago
I can confirm Rainer's observations and this not limited to PHP. One cannot link libopenldap with C with Oracle driver without crashing the app at runtime. Same here on HP-UX. Both won't play nice at all.
To Top