|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2008-01-30 15:37 UTC] rubens21 at gmail dot com
Description: ------------ change atribute of a class, and arrays that received values is change too. I know that the bug #33207 (http://bugs.php.net/bug.php?id=33207&edit=2) describes this same problem, but there is not the solution and the id of the other related. Reproduce code: --------------- $test = new stdClass(); $Objeto = new stdClass(); $test->valor = "No Change!"; $Objeto->valorDeTeste[] = $test; $test->valor = "Yes, change!"; $Objeto->valorDeTeste[] = $test; print_r($Objeto->valorDeTeste); Expected result: ---------------- Array ( [0] => stdClass Object ( [valor] => No Change! ) [1] => stdClass Object ( [valor] => Yes, change! ) ) Actual result: -------------- Array ( [0] => stdClass Object ( [valor] => Yes, change! ) [1] => stdClass Object ( [valor] => Yes, change! ) ) PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Thu Dec 04 16:00:01 2025 UTC |
This example is more simple: $test = new stdClass(); $Objeto = new stdClass(); $test->valor = "The first value"; $Objeto->valorDeTeste[] = $test; $test->valor = "The second value"; print_r($Objeto->valorDeTeste); Expected: Array ( [0] => stdClass Object ( [valor] => The first value ) ) Actual Array ( [0] => stdClass Object ( [valor] => The second value ) )I'm sorry, 'The same' = 'The same problem' CODE: $test = new stdClass(); $Objeto = new stdClass(); $test->valor = "The first value"; $Objeto->valorDeTeste[] = $test; $test->valor = "The second value"; echo "<pre>"; print_r($Objeto->valorDeTeste); echo "<br />"; var_dump($Objeto->valorDeTeste); echo "</pre>"; Array ( [0] => stdClass Object ( [valor] => The second value ) ) array(1) { [0]=> object(stdClass)#1 (1) { ["valor"]=> string(16) "The second value" } }