Bug #53053 [Fbk->Csd]: Magic Method __set changes object class

2010-10-15 Thread dave dot a dot roberts at gmail dot com
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

2010-10-13 Thread dave dot a dot roberts at gmail dot com
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