Xmlizer : objet fonctionnant sur le principe de "serialize()" et "unserialize()" de php.

Soyez le premier à donner votre avis sur cette source.

Vue 5 893 fois - Téléchargée 420 fois

Description

Après mettre pencher sur le "serialize()" et "unserialize()" de PHP grace a Skreo, je me suis vite rendu compte que ces dernières ne répondaient pas du toute à mes attentes. Donc voici une version équivalente mais donc le résultat est un "XML".

Une instance de XMLizer peut construire une XMLization à partir d'un Object, ou un Object à partir d'un string générer par XMLization...
Une des particularités des XMLIzer, est la possibilités d'encoder en URL le contenu des données "strings" afin par exemple, de pouvoir les insérer dans des requètes mySQl sans générer d'erreur du à l'utlisation de simple et double guillemets.

PHP possédant des fonction de lecture XML, ils sera (je l'espère) pour certain aisé de réupérer les données passsés.
Voilà certain trouveront cela surement inutile, d'autres comme moi, à l'inverse se sentiront plus familier avec le format XML.

A plus et profitez...

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

benoit_perso
Messages postés
1
Date d'inscription
mardi 12 juin 2007
Statut
Membre
Dernière intervention
18 novembre 2007
-
Salut top30,

Tout d'abord merci beaucoup pour ta source qui est très utile. Cependant, j'ai un petit souci car j'aimerais l'utiliser en Flash7 (c'est pour une appli sur PPC) et les propriétés prefix et localname de XMLNode ne sont pas connues.
Sais-tu comment contourner ce problème?

Merci à l'avance!
malalam
Messages postés
10844
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17 -
Hello,

je tombe ici par hasard...mais je vais ajouter mon grain de sel ;-)
Je suis programmeur php, et j'ai écrit une classe qui s'appelle XML serializer ;-)
La linéarisation XML a des avantages que n'ont pas les linéarisations classiques (type chaîne). Mais évidemment, tout dépend de l'utilisation que l'on veut en faire.
Les 3 avantages principaux, pou moi, sont :
- on peut faire basculer un objet php vers un autre langage facilement. Il faut évidemment d'avoir des classes identiques (ou compatibles, disons), et un serializer/unserializer dans l'autre langage aussi. Et hop, on échange les flux xml.
- on peut créer un objet (pas une classe hein, un objet) directement en décrivant le flux xml adéquat...
- on a une lecture simple, "humaine", d'un objet.

J'ai écrit cette classe, moi, en pensant à une appli que je développe, un rpg creator. Cela me permet d'avoir par exemple des monstres tout faits, sous forme de flux xml. Donc, de donner la poissbilité de créer facilement, à la main, des monstres.

Bref, j'aime le concept :-)
Skreo
Messages postés
53
Date d'inscription
samedi 12 novembre 2005
Statut
Membre
Dernière intervention
25 août 2008
-
Je comprends que tu veuilles utiliser le XML, ce qui est ma foi plus propre ^^
Mais Je persiste à penser que ma fonction a 2 avantages en plus :
- Elle génère une chaîne beaucoup plus courte, ce qui économise de la bande passante lorsqu'on veut transférer de grande variables
- Elle nécessite beaucoup moins de ressources serveur car php gère serialize() et unzerialize() en natif, alors que comme tu dis il faudrait créer les fonctions php pour parser ton XML, ce qui prendrait beaucoup plus de ressources ^^
(Euh j'ai mis beaucoup de temps pour laisser un commentaire mais bon...)
top30
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010
-
"Serialize" est une fonction de convertion d'objet PHP en "string".
Essaie un : "echo serialize($uneArray);" ou "echo serialize($unObj);" et tu comprendras tout de suite... Quant à "unserialize($unString)", c'est le contraire : la reconstruction de l'objet à partir du string créé par "serialize"...
BlackWizzard
Messages postés
1277
Date d'inscription
mercredi 21 mars 2001
Statut
Modérateur
Dernière intervention
21 juin 2009
2 -
Si tu pouvait expliquer en 2 mots a quoi ça sert concretement... perso je connais pas "serialize()" et "unserialize()" en PHP...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.