On Sat, Dec 03, 2005 at 01:28:21PM -0500, Matt Monaco wrote: > I have the following two methods as part of a class I'm using to transport > data between pages. > > static function pack($object) > { > if (session_id() == "") { > session_start(); I wouldn't put a random session_start() in places like this. > } > > $class = get_class($object); > $_SESSION["cmsSessionArray"][$class] = serialize($object); > } > ... > > the pack() method is called by the destructor of the objects I want to save > like: > function __destruct() > { > parent::pack($this); > } > > On subsequent pages the session data is not available until I do a > session_start(). Regardless of the fact that I think the session shouldn't > need to be restarted, I don't like the fact that if indeed it has been > closed that a session_start() on another page will bring back the data. > (Note, fortunately this doesn't not occur if the browser window has been > closed, at that point all session data is definitely lost as expected.) I'm not sure what you mean by restarting a session or what 'indeed has been closed' btw, your pack and unpack aren't really needed. All you have to do is in your __destruct() function is put something like: $_SESSION['cmsSessionArray'][__CLASSNAME__] = $this; And when you pull it out of the session: $obj = $_SESSION['cmsSessionArray']['someClass']; You'll have an instance of that class; you're really causing more work than needed. Curt. -- cat .signature: No such file or directory -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php