Unserialize di una stringa multi-byte con php
Se avete provato a serializzare e poi deserializzare una stringa multi-byte in PHP, avrete sicuramente notato che il risultato non è quello sperato. Questo perché la funzione unserialize di PHP non lavora correttamente con le stringe multi-byte. Potete aggiungere ed usare la seguente funzione, al posto della classica unserialize, per ovviare al problema:
1 2 3 4 | "]function mb_unserialize($string) { $string = preg_replace('!s:(\d+):"(.*?)";!se', "'s:'.strlen('$2').':\"$2\";'",$string); returnunserialize($string); } |
In … Leggi tutto