Jak můžete vidět v datových typech Redis, Redis podporuje pouze těchto 5 datových typů:
- Řetězec
- Seznam
- Nastavit
- Hash
- Seřazená sada
Neexistuje tedy žádný datový typ objektu a proto nemůžete uložit objekt přímo jako hodnotu. Nejprve jej musíte serializovat (nebo jej zakódovat JSON pomocí json_encode
například funkce).
Existuje nějaký problém se serializací, že trváte na přímém ukládání objektů?
Aktualizace: Podle toho, co jste řekli v komentářích, můžete použít přístup uvedený v této odpovědi
Můžete tedy použít:
$xml = $simpleXmlElem->asXML();
před serializací a poté po unserialize()
, použijte následující kód:
$simpleXmlElem = simplexml_load_string($xml);
Tímto způsobem nemusíte serializovat vestavěný objekt PHP, jako je SimpleXmlElement
přímo a nebudou žádné problémy.