Accès aux fichiers Paradox
Introduction
Ce module est EXPERIMENTAL. Cela signifie que le comportement de ces fonctions, leurs noms et, concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS ! Soyez-en conscient, et utilisez ce module à vos risques et périls.
Ce module vous permet de lire des bases de données Paradox ainsi que des fichiers d'index primaires et des fichiers Blob. Il peut également créer des bases de données Paradox mais dû au manque de documentation surle format des fichiers Paradox, il se peut que les bases créées ne soient pas lisibles avec toutes les autres applications. Les bases de données cryptées peuvent être lues sans pour autant spécifier de mot de passe si pxlib >= 0.5.0 est utilisé.
Note: Ce module est toujours en cours de développement et peut changer, même si l'API ne sera surement pas modifié en profondeur.
Pré-requis
Vous devez avoir au minimum PHP 5.0.0 et libpx >= 0.4.4 pour la plupart des fonctions. Quelques nouvelles fonctions ne sont disponibles que si pxlib >= 0.6.0 est utilisé. L'écriture et la lecture des bases de données cryptées nécessitent pxlib >= 0.5.0. La bibliothèque Paradox (libpx) est disponible sur » https://pxlib.sourceforge.net.
Installation
Des informations sur l'installation de ces extensions PECL peuvent être trouvées dans le chapitre du manuel intitulé Installation des extensions PECL. D'autres informations comme les notes sur les nouvelles versions, les téléchargements, les sources des fichiers, les informations concernant les mainteneurs ainsi qu'un CHANGELOG, peuvent être trouvées ici : » https://pecl.php.net/package/paradox
Assurez-vous d'avoir installé pxlib avant. Si vous avez installé pxlib via rpm ou via un paquet Débian, n'oubliez pas d'installer également le paquet de développement.
Configuration à l'exécution
Cette extension ne définit aucune directive de configuration.
API orientée objet
L'extension Paradox fournit également une API orientée objet. Elle consiste en une seule classe nommée paradox_db. Ses méthodes diffèrent uniquement des fonctions en leurs noms et, bien sûr, le premier paramètre manquant. La table suivante liste toutes les méthodes avec les fonctions équivalentes.
Nom de la méthode | Fonction équivalente |
---|---|
Constructor | px_new() |
Destructor | px_delete() |
open_fp() | px_open_fp() |
create_fp() | px_create_fp() |
close() | px_close() |
numrecords() | px_numrecords() |
numfields() | px_numfields() |
get_record() | px_get_record() |
put_record() | px_put_record() |
retrieve_record() | px_retrieve_record() |
delete_record() | px_delete_record() |
insert_record() | px_insert_record() |
update_record() | px_update_record() |
get_field() | px_get_field() |
get_schema() | px_get_schema() |
get_info() | px_get_info() |
set_parameter() | px_set_parameter() |
get_parameter() | px_get_parameter() |
set_value() | px_set_value() |
get_value() | px_get_value() |
get_info() | px_get_info() |
set_targetencoding() | px_set_targetencoding() |
set_tablename() | px_set_tablename() |
set_blob_file() | px_set_blob_file() |
date2string() | px_date2string() |
timestamp2string() | px_timestamp2string() |
Types de ressources
px_new() crée un nouvel objet Paradox, nécessaire à toutes les fonctions Paradox.
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.
Les deux tables suivantes listent toutes les constantes définies par l'extension Paradox.
Nom | Signification |
---|---|
PX_FIELD_ALPHA | Données sous forme de caractères avec une longueur fixe |
PX_FIELD_DATE | Date, nombre de jours depuis le 1.1.0000 |
PX_FIELD_SHORT | Entier court (2 octets) |
PX_FIELD_LONG | Entier long (4 octets) |
PX_FIELD_CURRENCY | Identique à PX_FIELD_NUMBER |
PX_FIELD_NUMBER | Double |
PX_FIELD_LOGICAL | Booléen |
PX_FIELD_MEMOBLOB | Objet binaire large |
PX_FIELD_BLOB | Objet binaire large (non supporté) |
PX_FIELD_FMTMEMOBLOB | Objet binaire large |
PX_FIELD_OLE | Objet OLE (basiquement un blob, non supporté) |
PX_FIELD_GRAPHIC | Graphique (basiquement un blob, non supporté) |
PX_FIELD_TIME | heure, nombre de millisecondes depuis le 1.1.0000 |
PX_FIELD_TIMESTAMP | timestamp, nombre de millisecondes depuis le 1.1.0000 |
PX_FIELD_AUTOINC | Entier auto-incrémenté (comme PX_FIELD_LONG) |
PX_FIELD_BCD | Nombre décimal stocké en format bcd (non supporté) |
PX_FIELD_BYTES | Tableau d'octets d'une longueur maximale de 255 octets (non supporté) |
PX_KEYTOLOWER | Convertit tous les noms de champs en minuscule |
PX_KEYTOUPPER | Convertit tous les noms de champs en majuscule |
Nom | Signification |
---|---|
PX_FILE_INDEX_DB | Base de données indexée |
PX_FILE_PRIM_INDEX | Index primaire |
PX_FILE_NON_INDEX_DB | Base de données non indexée |
PX_FILE_NON_INC_SEC_INDEX | Non-indexé incrémentalement secondaire |
PX_FILE_SEC_INDEX | Index secondaire |
PX_FILE_INC_SEC_INDEX | Index secondaire incrémental |
PX_FILE_NON_INC_SEC_INDEX_G | Index secondaire non-incrémental |
PX_FILE_SEC_INDEX_G | Index secondaire |
PX_FILE_INC_SEC_INDEX_G | Index secondaire non-incrémental |
Table of Contents
- px_close — Ferme une base de données Paradox
- px_create_fp — Crée une nouvelle base de données Paradox
- px_date2string — Convertit une date en une chaîne de caractères
- px_delete_record — Efface une enregistrement depuis une base de données Paradox
- px_delete — Efface la ressource d'une base de données Paradox
- px_get_field — Retourne les spécifications d'un champ
- px_get_info — Retourne des informations sur un fichier Paradox
- px_get_parameter — Récupère un paramètre
- px_get_record — Retourne un enregistrement d'une base de données Paradox
- px_get_schema — Retourne le schéma de la base de données
- px_get_value — Récupère une valeur
- px_insert_record — Insère un enregistrement dans une base de données Paradox
- px_new — Crée un nouvel objet Paradox
- px_numfields — Retourne le nombre de champs d'une base de données Paradox
- px_numrecords — Retourne le nombre d'enregistrements d'une base de données Paradox
- px_open_fp — Ouvre une base de données Paradox
- px_put_record — Stock un enregistrement dans une base de données Paradox
- px_retrieve_record — Retourne un enregistrement depuis une base de données Paradox
- px_set_blob_file — Définit le fichier depuis lequel les blobs seront lus
- px_set_parameter — Définit un paramètre
- px_set_tablename — Définit le nom de la table (déprécié)
- px_set_targetencoding — Définit l'encodage pour les caractères des champs (déprécié)
- px_set_value — Définit une valeur
- px_timestamp2string — Convertit un timestamp en une chaîne de caractères
- px_update_record — Met à jour les enregistrements dans une base de données Paradox