好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php session_destroy()和session_unset()区别 - php函数

php session_destroy()和session_unset()区别

本文章简单的介绍一下关于session_destroy(),session_unset()区别说明,有需要的朋友可以参考一下。 

session_unset()

PHP代码如下:

<?php    function  session_clean1( $logout =false)   {     $v = array ();     foreach ( $_SESSION   as   $x => $y )      if ( $x != "redirector" &&( $x != "user" || $logout ))       $v []= $x ;       foreach ( $v   as   $x )     unset( $_SESSION [ $x ]);     return ;   }    function  session_clean2( $logout =false)   {     foreach ( $_SESSION   as   $x => $y )      if ( $x != "redirector" &&( $x != "user" || $logout ))      unset( $_SESSION [ $x ]);     return ;   }    function  session_clean3( $logout =false)   {     $s =( $logout ||!isset( $_SESSION [ "user" ]))? array ():      array ( "user" => $_SESSION [ "user" ]);     if (isset( $_SESSION [ "redirector" ]))      $s [ "redirector" ]= $_SESSION [ "redirector" ];     $_SESSION = $s ;   }    ?> 

释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id

session_destroy()

删除当前用户对应的session文件以及释放session id,内存中的$_SESSION变量内容依然保留,因此,释放用户的session所有资源,需要顺序执行如下代码:

PHP代码如下:

<?php  // Initialize the session.   // If you are using session_name("something"), don't forget it now!   session_start();    // Unset all of the session variables.   $_SESSION  =  array ();    // If it's desired to kill the session, also delete the session cookie.   // Note: This will destroy the session, and not just the session data!   if  ( ini_get ( "session.use_cookies" )) {       $params  = session_get_cookie_params();      setcookie(session_name(),  '' , time() - 42000,           $params [ "path" ],  $params [ "domain" ],           $params [ "secure" ],  $params [ "httponly" ]      );  }    // Finally, destroy the session.   session_destroy();  ?> 

查看更多关于php session_destroy()和session_unset()区别 - php函数的详细内容...

  阅读:43次