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));
Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top