Ik gebruik een database om m'n sessiedata in op te slaan, en wil deze uit kunnen lezen. Ik dacht dat de data in de array $_SESSION dmv de functie serialize() in een string werd geconverteerd, en vervolgens werd opgeslagen. Dit blijkt niet zo te zijn:
Als ik dit doe:
Dan wordt dit opgeslagen:
Dit geeft false terug bij unserialize()
En dit geeft serialize($_SESSION) terug:
Waarom dit verschil? Maar belangrijker: Hoe kan ik de opgeslagen string naar een variabele converteren?
Als ik dit doe:
PHP:
1
2
| $var = array("bla",12); $_SESSION['var'] = $var; |
Dan wordt dit opgeslagen:
code:
1
| var|a:2:{i:0;s:3:"bla";i:1;i:12;} |
Dit geeft false terug bij unserialize()
En dit geeft serialize($_SESSION) terug:
code:
1
| a:1:{s:3:"var";a:2:{i:0;s:3:"bla";i:1;i:12;}} |
Waarom dit verschil? Maar belangrijker: Hoe kan ik de opgeslagen string naar een variabele converteren?