Re: [PHP] Class var not retaining values

2001-05-21 Thread Markus Fischer

On Mon, May 21, 2001 at 05:58:06PM -0400, Bob wrote : 
 I have a class defined with a var $reasons that I will use as an array.  The
 code to add to it is:
 
  function AddReason($score, $reason, $id)
  {
   static $index = 0;
   $this-reasons[$index] = $score|$reason|$id;
   for ($i = 0; $i  $index; $i++)
   {
$out = $this-reasons[$i];
echo $out...;
   }
   $index++;
   return $score;
  }

Put in a

var_dump( $this-reasons);

to view yourself what it really contains.

Or maybe you called your method static instead of a method ?

- Markus

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




Re: [PHP] Class var not retaining values

2001-05-21 Thread Peter Dudley

Could it be that you need your for loop to iterate = instead of  ?  As it
is, I don't think it will ever show anything.  After all, you are setting
$index to 0 at the beginning of the function every time you call it.

My guess is you actually want to keep track of $index as an instance
variable outside the function and reference it via $this-index in all the
places where you have $index.

class AR {
var $index = 0;

function AddReason($score, $reason, $id)
 {
  $this-reasons[$this-index] = $score|$reason|$id;
  for ($i = 0; $i = $this-index; $i++)
  {
   $out = $this-reasons[$i];
   echo $out...;
  }
  $this-index++;
  return $score;
 }
}



Pete.

Bob [EMAIL PROTECTED] wrote in message
9ec2rm$etg$[EMAIL PROTECTED]">news:9ec2rm$etg$[EMAIL PROTECTED]...
 I have a class defined with a var $reasons that I will use as an array.
The
 code to add to it is:

  function AddReason($score, $reason, $id)
  {
   static $index = 0;
   $this-reasons[$index] = $score|$reason|$id;
   for ($i = 0; $i  $index; $i++)
   {
$out = $this-reasons[$i];
echo $out...;
   }
   $index++;
   return $score;
  }

 However, every time I call it, the value stored in the reasons array seems
 to disappear, and the array holds no data.  It seems to be behaving like a
 local variable, even though it is in a class.  Any suggestions would be
 greatly appreciated.

 Thanks



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