#24608 [Ver]: __set not triggered when overloading with array
| From: | andrew@php.net | Date: | Tue, 16 Sep 2003 06:13:17 +0000 |
| Subject: | #24608 [Ver]: __set not triggered when overloading with array | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-47614@lists.php.net to get a copy of this message | ||
ID: 24608
Updated by: andrew@php.net
Reported By: jaanus at heeringson dot com
Status: Verified
Bug Type: Zend Engine 2 problem
Operating System: Linux 2.4 jkernel source distro
PHP Version: 5.0.0b2-dev
New Comment:
Have you tried adding a __get() function into the class, and seeing if
this returns the same output?
Previous Comments:
------------------------------------------------------------------------
[2003-07-11 12:48:38] jaanus at heeringson dot com
Description:
------------
When overloading a class with a property containing an array by
assigning an element to to the new array the __set handle does not
fire, but the element gets created.
Reproduce code:
---------------
<?php
class myclass {
public function __set($name,$data) {
echo("Name: {$name}<br/>\nData: {$data}<br/>\n"); //prints out input
when fired
}
}
$test=new myclass();
$test->style['temp']='content'; //creates a new property
print_r($test->style); //check if property is created
?>
Expected result:
----------------
Results from the echo in __set
Actual result:
--------------
The result of the print_r shows that the property is created, but id
did not pass the __set
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24608&edit=1