Ahh, guess I didn't look hard enough!  Thanks!

Dave

On Wed, 30 Jun 2004 10:10:29 +0200, Red Wingate <[EMAIL PROTECTED]> wrote:
> 
> Maybe you check out the internals archives as an discussion about this topic
> was held 1-2 days ago.
> 
> 
> > Hi all
> >
> > Using PHP5, I am trying to save some properties of an object when it
> > is destroyed in its destructor, __destruct().  However, I have found
> > that the session variable is NOT stored unless I explicitly destroy
> > the object using unset().  If I leave php to finish executing the
> > script and automatically destroy the object, the destructor IS called,
> > however, the session variables are NOT saved.  A quick code example
> > for clarity:
> >
> > -----
> > class StateMachine {
> >   public $stateVariable;
> >   function __destruct() {
> >     $_SESSION['state'] = $this->stateVariable;
> >   }
> > }
> >
> > $sm = new StateMachine();
> > if (isset($_SESSION['state'])) {
> >   $sm->stateVariable = $_SESSION['state'];
> > } else {
> >   $sm->stateVariable = 'foobar';
> > }
> > ----
> >
> > (please ignore the obvious bad coding standard of making that var
> > public and accessing it, this is for simplicity of the example).
> >
> > Unless I do an unset($sm); at the end of a script like this, the
> > $_SESSION array will never contain the state=>foobar key/value.
> >
> > Can anyone offer some insight into this?
> >
> > Thanks!
> > Dave
> 
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to