#40625 [NEW]: Indirect modification of overloaded property

From: Date: Sun, 25 Feb 2007 03:18:29 +0000
Subject: #40625 [NEW]: Indirect modification of overloaded property
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-109484@lists.php.net to get a copy of this message
From: noreply@php.net Operating system: XP SP2 PHP version: 5.2.1 PHP Bug Type: Class/Object related Bug description: Indirect modification of overloaded property Description: ------------ While using __get and __set im getting the following notice : "Notice: Indirect modification of overloaded property $var has no effect " It worked perfect in previous PHP versions. Reproduce code: --------------- class myclass { /* $this->_data = array(1) { ["abcd"] => array(2) { ["a"] => string(2) "cc" ["b"] => string(2) "dd" } } */ public function __get($name) { $result = null; if (isset($this->_data[$name])) { $result = $this->_data[$name]; } return (array)$this->_data[$name] ; } public function __set($value, $arg) { foreach($arg as $key=>$inhoud) { $this->_data[$value][$key] = $inhoud; } } } $myclass = new myclass(); $myclass->abcd['a'] = 'ee'; //does not work anymore $myclass->newNode['a'] = 'ee'; //does not work anymore Expected result: ---------------- array(2) { ["abcd"] => array(2) { ["a"] => string(2) "ee" ["b"] => string(2) "dd" } ["newNode"] => string(2) "ee" } Actual result: -------------- Data does not change and outputs "Notice: Indirect modification of overloaded property $var has no effect " -- Edit bug report at http://bugs.php.net/?id=40625&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=40625&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=40625&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=40625&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=40625&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=40625&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=40625&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=40625&r=needscript Try newer version: http://bugs.php.net/fix.php?id=40625&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=40625&r=support Expected behavior: http://bugs.php.net/fix.php?id=40625&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=40625&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=40625&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=40625&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=40625&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=40625&r=dst IIS Stability: http://bugs.php.net/fix.php?id=40625&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=40625&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=40625&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=40625&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=40625&r=mysqlcfg

« previous php.bugs (#109484) next »