Ich bin mir nicht sicher, warum es so weit geht. Ich bin nicht Serialisierung der XML, aber mein Array, das ich von einem RSS-Feed erstellt habe (beachten Sie, dass dies nur ein Ausschnitt ist):
%Vor% Dann serialisiere ich es $some_var = serialize($game_data)
und schreibe in eine Textdatei fputs($fh,$some_var)
.
Aber es kommt nicht so weit, es gibt Fehler in der Serialisierungszeile aus:
Uncaught Ausnahme 'Exception' mit Nachricht 'Serialisierung von' SimpleXMLElement 'ist nicht erlaubt'
Sie müssen die XML-Daten in eine Zeichenfolge umwandeln, da intern alle SimpleXMLElement
s sind.
Oder vielleicht ein bisschen eleganter:
%Vor%In den Dokumenten zu Klassen und Objekten gibt es Folgendes: Um ein Objekt zu deserialisieren (), muss die Klasse dieses Objekts definiert werden.
Vor PHP 5.3 war dies kein Problem. Aber nach PHP 5.3 kann ein von SimpleXML_Load_String () erzeugtes Objekt nicht serialisiert werden. Ein Versuch, dies zu tun, wird zu einem Laufzeitfehler führen und eine Ausnahme auslösen. Wenn Sie ein solches Objekt in $ _SESSION speichern, erhalten Sie einen Fehler nach der Ausführung, der besagt:
Fataler Fehler: Uncaught Ausnahme 'Exception' mit Nachricht 'Serialisierung von' SimpleXMLElement 'ist nicht erlaubt in [keine aktive Datei]: 0 Stack Trace: # 0 {main} in [keine aktive Datei] in Zeile 0 Der gesamte Inhalt der Sitzung geht verloren. Hoffe das spart jemandem etwas Zeit! Von: Ray.Paseur Was ich mache ist wie 'Stefan Gehrig' gesagt hat, die XML-Daten in eine Zeichenkette umwandeln Hinweis: Ссылка
Tags und Links php serialization exception simplexml