#45959 [Asn->Opn]: Object to array conversion leads to weird behaviour

From: Date: Mon, 03 Nov 2008 21:56:41 +0000
Subject: #45959 [Asn->Opn]: Object to array conversion leads to weird behaviour
References: 1  Groups: php.doc.bugs 
Request: Send a blank email to doc-bugs+get-1309@lists.php.net to get a copy of this message
ID: 45959 Updated by: felipe@php.net Reported By: manchokapitancho at gmail dot com -Status: Assigned +Status: Open -Bug Type: Scripting Engine problem +Bug Type: Documentation problem Operating System: windows xp PHP Version: 5.2.6 Assigned To: felipe New Comment: Fixing that implies a perfomance decrease, hence the better seems be keep it as an known issue, but documented. Previous Comments: ------------------------------------------------------------------------ [2008-08-31 13:53:10] manchokapitancho at gmail dot com Also array_key_exists returns false instead of true. ------------------------------------------------------------------------ [2008-08-31 13:52:29] manchokapitancho at gmail dot com Description: ------------ Object to array conversion leads to weird behaviour - access to array members is not possible. Reproduce code: --------------- $input = json_decode ('{"is_paid":{"0":"4","1":"3"},"is_bank_transfer":{"4":"1"}}'); $arr = ((array)$input->is_bank_transfer); var_dump($arr); var_dump($arr[4]); var_dump($arr['4']); $keys = array_keys ($arr); var_dump($keys); var_dump($arr[$keys[0]]); Expected result: ---------------- array(1) { ["4"]=> string(1) "1" } string(1) "1" string(1) "1" array(1) { [0]=> string(1) "4" } string(1) "1" Actual result: -------------- array(1) { ["4"]=> string(1) "1" } NULL NULL array(1) { [0]=> string(1) "4" } NULL ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=45959&edit=1

« previous php.doc.bugs (#1309) next »