> CopixXMLSerializer
fr

Introduction

CopixXMLSerializer permet de linéariser des valeurs PHP en XML, à l'instar des fonctions serialize() et unserialize().

Cette linéarisation à l'avantage d'être plus facilement éditable à la main que le format utilisé par PHP. Bien évidemment, le format XML est bien plus volumineux que le format serialize standard.

Pre-réquis

Ces deux classes utilisent les fonctions DOM incluses dans le PHP 5.

Utilisation

Linéariser

La linéarisation se fait en appelant la méthode statique serialize():


$xml = CopixXMLSerializer::serialize($data);
 

Le XML généré est un document XML complet, encodé en UTF-8.

Délinéariser

La délinéarisation se fait en appelant la méthode statique unserialize():


$data = CopixXMLSerializer::unserialize($xml);
 

Note Bene: étant donné l'algorithme relativement simple utilisé, il est impossible de faire des "forward references" dans le document XML, i.e. tout élément référencé par l'attribut "ref" doit déjà avoir été rencontré.

Détails d'implémentation

En interne ces deux classes utilisent les fonctions serialize() et unserialize(). Les objets à linéariser sont donc soumis aux mêmes traitements, cf. méthodes spéciales. Cela permet également de prendre en charge automatiquement les références.

Dans le cas de (dé)linéarisation d'objets, pensez à inclure les définitions de classe, tout comme lors de l'utilisation de (un)serialize().