ID: 17239
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Closed
Bug Type: Class/Object related
Operating System: Linux
PHP Version: 4.2.1
New Comment:
This is no longer an issue with ZE2 in which case every echo returns
'17' which is the expected behaviour.
Previous Comments:
------------------------------------------------------------------------
[2002-05-15 05:48:47] [EMAIL PROTECTED]
There is a bug with getting copy of object where 1th object has another
2th object and 2th object has another 3th object.
When i copy 2th object to any variable i must have 2th object in 1th
and 2th object in variable. It must be equals but not 2 links to one
object.
Look at this code and make changes as recommends in conmment.
<?
class a {
var $i;
function a () {
$this->i = 1;
}
function set_i ($p) {
$this->i = $p;
}
function get_i () {
return $this->i;
}
}
class b {
function b () {
$this->a = new a ();
}
function set_id ($p) {
$this->a->set_i ($p);
}
function get () {
return $this->a->get_i ();
}
}
class c {
function c () {
$this->item = new b ();
}
}
$cat= new c();
$z1 = $cat->item; // Comment this line
$cat->item->set_id (12);
$z = $cat->item->a;
//$z1 = $cat->item; // Decomment this line
$cat->item->set_id (17);
echo "<br>C: i: ".$cat->item->get();
echo "<br>Z: i: ".$z->get_i ();
echo "<br>Z: i: ".$z1->get ();
if ($cat->item->get() == $z1->get ()) echo " - <font color=red>Getting
BUG here. There must be '1' value!</font>";
?>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=17239&edit=1