ID: 8661
User Update by: [EMAIL PROTECTED]
Status: Open
Bug Type: Class/Object related
Description: a copy of the internal array elements is sometimes not made
This might be the same as 8130, but I'm not sure.
Previous Comments:
---------------------------------------------------------------------------
[2001-01-11 16:27:34] [EMAIL PROTECTED]
<?php
// buggy.php
// If I leave both A1 and A2 commented out, the code works fine.
// If I uncomment A1 only, the code works as expected
// If I uncomment A2 only, the code does not work as expected
class Element
{
var $val;
function set_value($newval)
{
$this->val = $newval;
}
}
class Owner
{
var $elementArray;
function dump()
{
foreach ($this->elementArray as $index => $value)
{
print("index [$index] value [$value->val]<BR>");
}
}
}
$myOwner = new Owner();
$myOwner->elementArray[0] = new Element;
// -- A1 --
// this works as expected
$myOwner->elementArray[0]->val = 10;
// -- A2 --
// if this line is uncommented the code does not work as expected
//$myOwner->elementArray[0]->set_value(10);
print("dump myOwner<BR>");
$myOwner->dump();
print("<BR>");
print("make a copy of myOwner<BR>");
$copyOwner = $myOwner;
print("<BR>");
print("dump copyOwner<BR>");
$copyOwner->dump();
print("<BR>");
print("change copyOwner index 0 to 999999<BR>");
$copyOwner->elementArray[0]->val = 999999;
print("dump copyOwner<BR>");
$copyOwner->dump();
print("<BR>");
print("dump myOwner<BR>");
$myOwner->dump();
print("<BR>");
?>
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=8661
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]