How to avoid deprecation warning by replacing session_unregister with $SESSION[] after upgrading to PHP 5.3?

StackOverflow https://stackoverflow.com/questions/1250173

Question

I just installed PHP 5.3 and am weeding out consequent "deprecated" warnings.

It says session_unregister() is deprecated in:

session_unregister($serverWideUniqueIdCode);

and the replacement seems to be $_SESSION[].

So what would be the syntax with $_SESSION[] to express the same thing?

Was it helpful?

Solution

Quoting the doc (take a look at that page, it says quite some interesting stuff ;-) ) :

session_unregister() unregisters the global variable named name from the current session.

To remove an entry from an array, you can use unset. So, instead of

session_unregister('my_var');

You can use

unset($_SESSION['my_var']);

Which, in your case, I guess, means :

unset($_SESSION[$serverWideUniqueIdCode]);


Still, you probably don't want to call unset on the whole $_SESSION variable. Quoting the doc a second time :

Note: If $_SESSION (or $HTTP_SESSION_VARS for PHP 4.0.6 or less) is used, use unset() to unregister a session variable. Do not unset() $_SESSION itself as this will disable the special function of the $_SESSION superglobal.

OTHER TIPS

$_SESSION = array();

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top