WDDX
Introduction
Ces fonctions fonctionnent grâce à » WDDX.
Pré-requis
Pour utiliser WDDX, vous devez installer la bibliothèque EXPAT (qui est fournie avec la distribution d'Apache 1.3.7 ou plus récent).
Installation
Après avoir installé Expat, compilez PHP avec --enable-wddx.
La version Windows de PHP dispose du support automatique de cette extension. Vous n'avez pas à ajouter de bibliothèque supplémentaire pour disposer de ces fonctions.
Configuration à l'exécution
Cette extension ne définit aucune directive de configuration.
Types de ressources
Cette extension définit l'identifiant du paquet WDDX, retourné par la fonction wddx_packet_start().
Constantes pré-définies
Cette extension ne définit aucune constante.
Exemples
Notez bien que toutes les fonctions qui enregistrent des données, utilisent le premier élément d'un tableau pour savoir si ce tableau doit être enregistré sous la forme d'un tableau ou d'une structure. Si le premier élément a une clé de type chaîne, le tableau sera enregistré sous la forme d'une structure, sinon, il le sera sous la forme d'un tableau.
Example#1 Enregistre une valeur simple
<?php
echo wddx_serialize_value("Exemple de paquet de PHP Ã WDDX", "Paquet PHP");
?>
L'exemple ci-dessus va afficher :
<wddxPacket version='1.0'><header comment='Paquet PHP'/><data>
<string>Exemple de paquet de PHP Ã WDDX</string></data></wddxPacket>
Example#2 Utilisation de paquets incrémentaux
<?php
$pi = 3.1415926;
$packet_id = wddx_packet_start("PHP");
wddx_add_vars($packet_id, "pi");
/* Supposons que $villes provient d'une base de données */
$villes = array("Paris", "Montréal", "Lyon");
wddx_add_vars($packet_id, "villes");
$packet = wddx_packet_end($packet_id);
echo $packet;
?>
L'exemple ci-dessus va afficher :
<wddxPacket version='1.0'><header comment='PHP'/><data><struct> <var name='pi'><number>3.1415926</number></var><var name='villes'> <array length='3'><string>Paris</string><string>Montréal</string> <string>Lyon</string></array></var></struct></data></wddxPacket>
Note: Si vous voulez linéariser des caractères non-ASCII, vous devez d'abord convertir vos données en UTF-8. (Voir les fonctions utf8_encode() et iconv().)
Table of Contents
- wddx_add_vars — Ajoute des variables à un paquet WDDX
- wddx_deserialize — Alias de wddx_unserialize
- wddx_packet_end — Clôt un paquet WDDX
- wddx_packet_start — Commence un nouveau paquet WDDX avec une structure
- wddx_serialize_value — Enregistre une valeur dans un paquet WDDX
- wddx_serialize_vars — Enregistre plusieurs valeurs dans un paquet WDDX
- wddx_unserialize — Délinéarise un paquet WDDX