ID: 40248 Updated by: [EMAIL PROTECTED] Reported By: jontsa at amigaone dot cc Status: Open -Bug Type: Documentation problem +Bug Type: Class/Object related Operating System: Solaris PHP Version: 5.2.0 New Comment:
<?php $c = $c + 5; // Notice $a += 5; // Notice $b = new stdClass; $b->a; // Notice $b->c = $b->c + 5; // Notice $b->a += 5; ?> It really is not a rocket science. This behavior is inconsistent and errors-hiding. The explanation through operator precedence doesn't work as $b->a alone issues the notice too. If you don't want to fix it then leave it to others. Previous Comments: ------------------------------------------------------------------------ [2007-08-17 23:34:16] [EMAIL PROTECTED] Operator precedence. $b->a happens before += and thus the property does exist before assignment. Not really rocket science. Now go document it. ------------------------------------------------------------------------ [2007-08-17 16:05:48] [EMAIL PROTECTED] If this incostitent and possibly-errors-hiding behavior should be documented as a feature it should be explained why PHP behaves this way. Please write down the reasons why this is the correct behavior. I provided two reasons why this is more bug than a feature. ------------------------------------------------------------------------ [2007-08-17 13:37:23] [EMAIL PROTECTED] Because it is. ------------------------------------------------------------------------ [2007-08-17 11:09:21] [EMAIL PROTECTED] Why this form of usage of undefined property should be considered as feature? ------------------------------------------------------------------------ [2007-05-10 20:40:29] [EMAIL PROTECTED] This is actually a feature. Can't seem to find where it's documented though so reclassifying. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/40248 -- Edit this bug report at http://bugs.php.net/?id=40248&edit=1