Pubblicato il Lascia un commento

Serializza

Cosa è e come funziona la serializzazione (serialize) e deserializzazione (unserialize) in php.

Serve principalmente per passare oggetti da una pagina php all’altra, ma può essere usato anche per archiviare dati leggeri.

Attenzione che a seconda del dato serializzato dovrebbe esservi un rischio perdita informazioni, come nel caso di array multidimensionali con chiavi.

Da verificare

 

Esempio:

in wordpress uso la funzione maybe_unserialize()

in PHP unserialize() vedi http://php.net/manual/it/function.unserialize.php

Risultato

 

E l’opposto è serialize()

 

 

Capire se un valore è serializzato

fonte: http://stackoverflow.com/questions/2878218/check-if-string-is-serialized-in-php?#answer-2878254

 

ALTRO ESEMPIO

Qui si vede l’utilizzo anche di altre funzioni utili come:

  • array_keys() – restituisce array di sole chiavi
  • array_values() – restituisce array di soli valori
  • array_key_exists() – restituisce 1 se lo trova e 0 se non lo trova (+o-)
  • array_search() – restituisce posizione se lo trova

Ovviamente è meglio guardare la PHP DOM per i valori di ritorno, errori, messaggi etc.

 

 

Metodi magici

Quando un oggeto viene serializzato PHP cerca di eseguire in automatico il metodo magico __sleep()  mentre quando viene deserializzato tenta di eseguire __wakeup() .

 

Fonti

http://php.net/manual/it/function.serialize.php

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.