|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2010-01-16 03:45 UTC] rasmus@php.net
[2010-01-16 21:56 UTC] tolkad dot freenode at gmail dot com
[2010-01-24 01:00 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Oct 27 08:00:01 2025 UTC |
Description: ------------ When certain strings are unserialized they do not reserialize properly. Reproduce code: --------------- <?php $x = array(); $x[] = &$x; var_dump($x); $z = serialize($x); echo $z . "\n"; var_dump(unserialize($z)); echo "\n\n\n"; $x = unserialize("a:1:{i:0;R:1;}"); var_dump($x); $z = serialize($x); echo $z . "\n\n"; var_dump(unserialize($z)); Expected result: ---------------- array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } a:1:{i:0;a:1:{i:0;R:2;}} array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } a:1:{i:0;R:1;} array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } Actual result: -------------- array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } a:1:{i:0;a:1:{i:0;R:2;}} array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } array(1) { [0]=> array(1) { [0]=> array(1) { [0]=> *RECURSION* } } } a:1:{i:0;a:1:{i:0;a:1:{i:0;N;}}} array(1) { [0]=> array(1) { [0]=> array(1) { [0]=> NULL } } }