ID: 9643
User Update by: [EMAIL PROTECTED]
Old-Status: Feedback
Status: Open
Bug Type: Class/Object related
Description: Variable member value gets lost from object during use

Ah of course :o)
Looking at the code again if I make the first foreach loop become:

foreach ($crList as $index => $cr)
{
  if ($cr -> okToClose ())
  {
    $crList [$index] = $cr;
  }
  else
  {
    return false;
  }
}

Then as you say the changes to the copy of the object are 'absorbed' back into the 
list. Many thanks for that, this isn't a problem after all :o)

Previous Comments:
---------------------------------------------------------------------------

[2001-03-29 06:14:28] [EMAIL PROTECTED]
Could you please describe in more detail what happens and
what the problem is?

Also note that when you are using foreach, it operates on
the copy of the data, not the data itself. So if you modify
it, the change won't be made in the original data.

---------------------------------------------------------------------------

[2001-03-08 20:07:48] [EMAIL PROTECTED]
Also running Zend optimiser 1.0. Removing the optimiser makes no difference to the 
outcome.
The problem should hopefully be outlined in the cut and paste of the code below. There 
are no other operations occurring on any of the instantiated objects at the time:

-----------------------------
$crList  = $this -> getLinkedCRs (); // method returns an array of instantiated 
objects (CRRecord class).

foreach ($crList as $cr)
{
  if (!$cr -> okToClose ()) // method returns a Boolean, and sets a Boolean data 
member in the cr object.
  {
    return false;
  }
}
   
foreach ($crList as $cr)
{
  // Previously set Boolean data member now appears to no longer be set.
  $cr -> okToClose (); // Inserting the method call in again here ensures that the 
following method call works.
  $cr -> close ($changeBy); // method operates only if the previously set Boolean data 
member is true.
}


---------------------------------------------------------------------------


Full Bug description available at: http://bugs.php.net/?id=9643


-- 
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]

Reply via email to