XXIV. Fonctions dbx

Introduction

Le module dbx est un module d'abstraction de base de données (db pour database (base de données) et 'X' pour toutes les bases supportées). Les fonctions dbx vous permettent d'accéder à toutes les bases supportées, avec la même convention. Les fonctions dbx elles-mêmes ne s'interfacent pas directement avec les bases de données, mais s'interfacent avec les modules utilisées pour supporter ces bases.

Pré-requis

Pour pouvoir utiliser une base de données avec le module dbx, le module doit être soit lié, soit chargé dans PHP et le module de base de données doit être supporté par le module dbx. Actuellement les bases suivantes sont supportées, et d'autres suivront :

La documentation nécessaire pour ajouter le support d'autres bases de données est disponible à l'adresse http://www.guidance.nl/php/dbx/doc/.

Installation

Il vous faut avoir ces fonctions compilées avec PHP (option de configuration --enable-dbx et toutes les bases que vous souhaitez utiliser. Par exemple, si vous voulez accéder à MySQL depuis dbx, vous devez aussi configurer PHP avec --with-mysql=[DIR].

Configuration à l'exécution

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

Tableau 1. Options de configuration

NomPar défautModifiable
dbx.colnames_case"unchanged"PHP_INI_SYSTEM
Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Note : Ces options de configuration sont uniquement disponibles à partir de PHP 4.3.0.

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

dbx.colnames_case string

Les noms de colonnes peuvent être retournés comme "inchangés" ("unchanged"), ou bien "majuscules" ("uppercase") ou encore "minuscules" ("lowercase"). Cette directive peut être reconfigurée par une option de dbx_query().

Types de ressources

Il y a deux ressources utilisées par le module dbx. Le premier est le type link-object, pour les connexions aux bases de données, et l'autre est le type result-object qui contient les lignes lues.

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

DBX_MYSQL (entier)

DBX_ODBC (entier)

DBX_PGSQL (entier)

DBX_MSSQL (entier)

DBX_FBSQL (entier)

DBX_OCI8 (entier) (disponible à partir de PHP 4.3.0)

DBX_SYBASECT (entier)

DBX_SQLITE (entier) (PHP 5)

DBX_PERSISTENT (entier)

DBX_RESULT_INFO (entier)

DBX_RESULT_INDEX (entier)

DBX_RESULT_ASSOC (entier)

DBX_RESULT_UNBUFFERED (entier) (PHP 5)

DBX_COLNAMES_UNCHANGED (entier) (uniquement disponible à partir de PHP 4.3.0)

DBX_COLNAMES_UPPERCASE (entier) (uniquement disponible à partir de PHP 4.3.0)

DBX_COLNAMES_LOWERCASE (entier) (uniquement disponible à partir de PHP 4.3.0)

DBX_CMP_NATIVE (entier)

DBX_CMP_TEXT (entier)

DBX_CMP_NUMBER (entier)

DBX_CMP_ASC (entier)

DBX_CMP_DESC (entier)

Table des matières
dbx_close -- Ferme une connexion à une base DBX
dbx_compare -- Compare deux lignes DBX afin de les trier
dbx_connect -- Ouvre une connexion à une base de données
dbx_error --  Rapporte le message d'erreur du dernier appel de fonction DBX
dbx_escape_string --  Protège une chaîne de caractères pour l'utiliser dans une requête
dbx_fetch_row -- Lit une ligne dans un résultat DBX ayant l'option DBX_RESULT_UNBUFFERED activée
dbx_query -- Envoie une requête et lit tous les résultats DBX
dbx_sort -- Trie un résultat avec une fonction utilisateur