Bug #53053 [Fbk->Csd]: Magic Method __set changes object class
Edit report at http://bugs.php.net/bug.php?id=53053&edit=1 ID: 53053 User updated by:dave dot a dot roberts at gmail dot com Reported by:dave dot a dot roberts at gmail dot com Summary:Magic Method __set changes object class -Status: Feedback +Status: Closed Type: Bug Package:Class/Object related Operating System: FreeBSD 8.1-RELEASE PHP Version:5.3.3 Block user comment: N New Comment: I think this was happening because I was trying to pull an object out of an array by the wrong key. Sorry to waste your time. Previous Comments: [2010-10-14 04:43:28] ahar...@php.net Please provide a complete reproduction script, preferably (well) under 50 lines of code. For the record, I can't reproduce this with the following script: $name = $value; } } $c = new C; var_dump(get_class($c)); $c->foo = 'bar'; var_dump(get_class($c)); ?> ---- [2010-10-13 17:49:42] dave dot a dot roberts at gmail dot com Description: I have an object I created from class Post. $p = new Post(); get_class($p) will return the class Post. After I assign a variable to the class using the magic method __set $p->datereceived = "1234"; get_class($p) will return stdClass. Test script: --- $p = new Post(); print(get_class($p)); // returns Post $p->datereceived = "1234"; print(get_class($p)); // returns stdClass. Expected result: The classname of Post should be returned twice. Actual result: -- Post is returned the first time, stdClass is returned the second time. -- Edit this bug report at http://bugs.php.net/bug.php?id=53053&edit=1
[PHP-BUG] Bug #53053 [NEW]: Magic Method __set changes object class
From: Operating system: FreeBSD 8.1-RELEASE PHP version: 5.3.3 Package: Class/Object related Bug Type: Bug Bug description:Magic Method __set changes object class Description: I have an object I created from class Post. $p = new Post(); get_class($p) will return the class Post. After I assign a variable to the class using the magic method __set $p->datereceived = "1234"; get_class($p) will return stdClass. Test script: --- $p = new Post(); print(get_class($p)); // returns Post $p->datereceived = "1234"; print(get_class($p)); // returns stdClass. Expected result: The classname of Post should be returned twice. Actual result: -- Post is returned the first time, stdClass is returned the second time. -- Edit bug report at http://bugs.php.net/bug.php?id=53053&edit=1 -- Try a snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=53053&r=trysnapshot52 Try a snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=53053&r=trysnapshot53 Try a snapshot (trunk): http://bugs.php.net/fix.php?id=53053&r=trysnapshottrunk Fixed in SVN: http://bugs.php.net/fix.php?id=53053&r=fixed Fixed in SVN and need be documented: http://bugs.php.net/fix.php?id=53053&r=needdocs Fixed in release: http://bugs.php.net/fix.php?id=53053&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=53053&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=53053&r=needscript Try newer version: http://bugs.php.net/fix.php?id=53053&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=53053&r=support Expected behavior: http://bugs.php.net/fix.php?id=53053&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=53053&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=53053&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=53053&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=53053&r=php4 Daylight Savings:http://bugs.php.net/fix.php?id=53053&r=dst IIS Stability: http://bugs.php.net/fix.php?id=53053&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=53053&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=53053&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=53053&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=53053&r=mysqlcfg