sérialisation erreur SimpleXMLElement
Question
Je vais avoir ce problème quand je suis en train de sérialisation ma classe je reçois l'exception
Serialization of 'SimpleXMLElement' is not allowed.
Je ne comprends pas l'erreur. Je ne suis même pas en utilisant les fonctionnalités XML de PHP .. Qu'est-ce que cela signifie d'erreur?
Le code:
$test = new \My\Name\Space\MyClass();
die(serialize($test));
La solution
Vous avez un SimpleXmlElement
dans le graphe d'objet de l'instance \My\Name\Space\MyClass
mais il ne peut pas être publié en feuilleton. Ajouter le magic méthode __sleep
à l'influence des propriétés qui se sérialisés et qui sont ignorés ou implémentent l'interface Serializable
Autres conseils
Je viens de faire un tableau de tous mes attributs dans la classe et sérialisé celui-là, quand je reçois le dos du tableau de la session, je désérialisable et le charger avant.
J'ai fait 2 méthodes supplémentaires dans la classe. 1 pour obtenir le tableau, et l'autre pour charger le tableau.
Je ne l'ai pas trouvé où le SimpleXMLElement est utilisé dans Symfony 2.
Et maintenant, il fonctionne.