If globals is on, you'll have to unset the $_SESSION[varname] as well as the $varname.
Like:
unset($_SESSION[varname]);
unset($varname);
(PHP 4, PHP 5 < 5.4.0)
session_unregister — Unregister a global variable from the current session
$name
)
session_unregister() unregisters the global variable
named name
from the current session.
本函式已自 PHP 5.3.0 起廢棄並將自 PHP 5.4.0 起移除。
name
The variable name.
如果成功則回傳 TRUE
,失敗則回傳 FALSE
。
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.
This function does not unset the corresponding global variable for
name
, it only prevents the variable from being
saved as part of the session. You must call unset()
to remove the corresponding global variable.
If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister().
If globals is on, you'll have to unset the $_SESSION[varname] as well as the $varname.
Like:
unset($_SESSION[varname]);
unset($varname);
To unregister some session you can use:
<?php
// delete session
$_SESSION['NAME'] = array();
// start session
session_start();
// put info in session
$_SESSION['NAME']['userid'] = 5;
$_SESSION['NAME']['name'] "John Doe";
?>
as a side note you must have session_start() set inorder to actually unregister the session varibles.