sql >> Database teknologi >  >> NoSQL >> Redis

php-redis - Er der en måde at gemme PHP-objekt i Redis uden at serialisere det?

Som du kan se i Redis-datatyper, understøtter Redis kun disse 5 datatyper:

  • String
  • Liste
  • Indstil
  • Hash
  • Sorteret sæt

Så der er ingen objektdatatype og derfor er du ikke i stand til at gemme et objekt direkte som en værdi. Du skal først serialisere den (eller JSON-indkode den med json_encode funktion for eksempel).

Er der noget problem med at serialisere, at du insisterer på at gemme dine objekter direkte?

Opdatering: Ifølge det, du sagde i kommentarerne, kan du bruge den tilgang, der er angivet i dette svar

Så du kan bruge:

$xml = $simpleXmlElem->asXML();

før serialisering og derefter efter unserialize() , brug følgende kode:

$simpleXmlElem = simplexml_load_string($xml);

På denne måde behøver du ikke at serialisere et indbygget PHP-objekt som SimpleXmlElement direkte, og der vil ikke være nogen problemer.



  1. Opretter BSON-objekt fra JSON-streng

  2. MongoDB Aggregation:Tæller adskilte felter

  3. Nodejs, venter ikke på, at Redis-forespørgslen er fuldført, før du fortsætter med eksekveringen

  4. MongoDB - Opret en samling