I think you're missing something here, Yasuo. Hans is talking about unregistering a single session variable, not the entire session array. He's talking about unset($_SESSION['varname']), not unset($_SESSION).
Yasuo Ohgaki wrote: > Hans Spath wrote: >> Yasuo Ohgaki wrote: >> >>> Hans Spath wrote: >>> >>>> When register_globals is enabled, you can't unregister session >>>> variables via unset($_SESSION['varname']). How are php coders >>>> supposed to write clean code with that new autoglobal variable, when >>>> they have to have the same configuration at every server they run >>>> their scripts? >>>> I've written a bug report (#15551) which was classified as 'Bogus'. I >>>> don't think ignoring that problem is a good solution, so please >>>> review that bug report. Thanks. >>>> - Hans Spath >>> >>> >>> Use session_unset(). >>> It does not create any inconsistency, not like session_register(), etc. >> >> >> Then it should be changed in the documentation (ref.session....) where >> it says don't use session_unregister($var) (Caution block), use >> unset($_SESSION[$var]) (Example 3). >> > > > I noticed it causes segfault while ago and changed document to > use $_SESSION = array() when register_globals if Off. > (It's a little more efficient than session_unset()) > When register_glaobals is On, user need to use session_unregister() > > I think mirror or master manaul is not updated, yet. > > This is one of the session module problem that I want to fix > for PHP 4.3.0 :) > i.e. Allow unset($_SESSION) or unset($HTTP_SESSION_VARS) to unset > session vars regardless of register_globals setting. > -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php