Wie Sie in Redis-Datentypen sehen können, unterstützt Redis nur diese 5 Datentypen:
- Zeichenfolge
- Liste
- Einstellen
- Hash
- Sortierter Satz
Es gibt also keinen Objektdatentyp und daher können Sie ein Objekt nicht direkt als Wert speichern. Sie müssen es zuerst serialisieren (oder mit dem json_encode
JSON-kodieren Funktion zum Beispiel).
Gibt es ein Problem mit der Serialisierung, dass Sie darauf bestehen, Ihre Objekte direkt zu speichern?
Aktualisierung: Gemäß Ihren Angaben in den Kommentaren können Sie den in dieser Antwort angegebenen Ansatz verwenden
Sie können also verwenden:
$xml = $simpleXmlElem->asXML();
vor der Serialisierung und dann nach unserialize()
, verwenden Sie den folgenden Code:
$simpleXmlElem = simplexml_load_string($xml);
Auf diese Weise müssen Sie ein in PHP integriertes Objekt wie SimpleXmlElement
nicht serialisieren direkt und es wird keine Probleme geben.