#48171 [Opn->Bgs]: Unserialize converts string to integer in case of numeric properties
| From: | jani@php.net | Date: | Wed, 06 May 2009 18:39:06 +0000 |
| Subject: | #48171 [Opn->Bgs]: Unserialize converts string to integer in case of numeric properties | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-136859@lists.php.net to get a copy of this message | ||
ID: 48171
Updated by: jani@php.net
Reported By: csnyder at fcny dot org
-Status: Open
+Status: Bogus
Bug Type: Scripting Engine problem
Operating System: Linux
PHP Version: 5.2.9
New Comment:
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
Previous Comments:
------------------------------------------------------------------------
[2009-05-06 18:36:32] csnyder at fcny dot org
Description:
------------
When unserializing a string like
O:8:"stdClass":3:{s:5:"22387";s:1:"a";s:5:"22386";s:1:"a";s:5:"22368";s:1:"a";},
the resulting object will have integers as property names instead of
strings.
This may be regression of #43614, marked fixed in CVS but that was a
year ago.
Reproduce code:
---------------
<?php
// an object with some numeric keys
$keys = array( "1", "2", "3" );
foreach( $keys AS $key ) {
$obj->{$key} = 'a';
}
var_dump( $obj );
$s = serialize( $obj );
$u = unserialize( $s );
var_dump( $u );
?>
Expected result:
----------------
object(stdClass)#1 (3) {
["1"]=>
string(1) "a"
["2"]=>
string(1) "a"
["3"]=>
string(1) "a"
}
object(stdClass)#2 (3) {
["1"]=>
string(1) "a"
["2"]=>
string(1) "a"
["3"]=>
string(1) "a"
}
Actual result:
--------------
object(stdClass)#1 (3) {
["1"]=>
string(1) "a"
["2"]=>
string(1) "a"
["3"]=>
string(1) "a"
}
object(stdClass)#2 (3) {
[1]=>
string(1) "a"
[2]=>
string(1) "a"
[3]=>
string(1) "a"
}
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=48171&edit=1