ConFoo 2025

Fonctions IBM (PDO_IBM)

Introduction

PDO_IBM est un driver qui implémente l'interface PHP Data Objects (PDO) afin d'activer l'accès depuis PHP aux bases de données IBM.

Installation

Pour compiler l'extension PDO_IBM, le client DB2 v9.1 ou supérieur doit être installé sur le même système que PHP. Le client DB2 peut être téléchargé depuis le site d'IBM de » développement d'applications.

Note: Note

Le client DB2 v9.1 ou supérieur supporte les accès directs à DB2 pour les systèmes Linux, UNIX et les serveurs Windows v8 et v9.1.

Le client DB2 v9.1 supporte également les accès à DB2 UDB pour i5 et DB2 UDB pour les serveurs z/OS en utilisant le » produit de connexion DB2 payant.

PDO_IBM est une extension » PECL; vous devez donc suivre les instructions de Installation d'extensions PECL pour installer l'extension PDO_IBM. Exécutez la commande configure afin qu'elle pointe vers le dossier contenant les fichiers d'en-têtes et les bibliothèques du client DB2 comme ceci :

 bash$ ./configure --with-pdo-ibm=/path/to/sqllib[,shared]
La commande configure utilise par défaut la valeur de la variable d'environnement DB2DIR.

Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.

Options de configuration PDO_IBM
Nom Défaut Modifiable Historique
pdo_ibm.i5_dbcs_alloc "0" INI_SYSTEM Ajouter dans PDO_IBM 1.5.0
pdo_ibm.i5_override_ccsid "0" INI_SYSTEM Ajouter dans PDO_IBM 1.5.0
Pour plus de détails sur les modes INI_*, reportez-vous à Où une directive de configuration peut être modifiée.

Voici un éclaircissement sur l'utilisation des directives de configuration.

pdo_ibm.i5_dbcs_alloc int

Cette option affecte la stratégie d'allocation de mémoire interne sur IBM i. Par défaut, cette option est 0. Lorsque cette option est définie, des tampons sont alloués avec une taille beaucoup plus grande, au cas où la base de données serait trompeuse sur la taille des caractères lors de la conversion entre les encodages. Cette option utilise six fois plus de mémoire pour les tampons (pour tenir compte des séquences UTF-8 les plus longues), mais peut être nécessaire si des données tronquées sont renvoyées.

  • 0 - La taille minimale des tampons est allouée.

  • 1 - Une plus grande taille des tampons est allouée.

pdo_ibm.i5_override_ccsid int

Le CCSID ASCII à utiliser pour la conversion de l'EBCDIC sur IBM i. En définissant ceci à 1208, vous utiliserez l'UTF-8. Par défaut, c'est 0,ce qui sélectionnera le CCSID de travail ASCII par défaut.

Pour en savoir plus sur les CCSID sur IBM i, consultez la » documentation IBM.

Sommaire

add a note

User Contributed Notes 1 note

up
0
jwoehr at softwoehr dot com
2 years ago
Connecting to IBM i (called "i5" above in the article) Db2 is usually simpler using PDO_ODBC with the IBM i ODBC driver for IBM i itself, Windows, Linux, or Mac, all free to download ... see https://www.ibm.com/support/pages/odbc-driver-ibm-i-access-client-solutions
To Top