• PHP session变量的销毁


    1.何为session?
       相当于一个客户端(可以是浏览器、app、ftp等其他,而且同一个浏览器多开几个又算是不同的客户端)对服务器的一个访问,这个期间服务器为此建立一个唯一的标示(session_id session_name),其实也就是一个数组Array(),Session的开始和结束并不以业务上的输入用户名密码开始,也不以关闭浏览器和网页刷新而结束
    2.session变量的销毁
      程序代码
    <?php
    session_unset();
    session_destroy();
    ?>

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

    session_destroy()
    删除当前用户对应的session文件以及释放session id,内存中的$_SESSION变量内容依然保留

    【注意】:

    删除session方法:

    1、unset ($_SESSION['xxx']) 删除单个session,unset($_SESSION['xxx']) 用来unregister一个已注册的session变量。其作用和session_unregister()相同。session_unregister()在PHP5中不再使用,可将之打入冷宫。

      unset($_SESSION) 此函数千万不可使用,它会将全局变量$_SESSION销毁,而且还没有可行的办法将其恢复。用户也不再可以注册$_session变量。

      2、$_SESSION=array() 删除多个session

      3、session_destroy()结束当前的会话,并清空会话中的所有资源。。该函数不会unset(释放)和当前session相关的全局变量(globalvariables),也不会删除客户端的session cookie.PHP默认的session是基于cookie的,如果要删除cookie的话,必须借助setcookie()函数

      返回值:布尔值。

      功能说明:这个函数结束当前的session,此函数没有参数,且返回值均为true

      session_unset() 如果使用了$_session,则该函数不再起作用。由于PHP5必定要使用$_session,所以此函数可以打入冷宫了。

    可以得出删除session的步骤

      ①session_start()

      ②$_SESSION=array()/unset($_session['xxx'])

      ③session_destroy()

  • 相关阅读:
    冷饭新炒:理解Sonwflake算法的实现原理
    nodejs多线程的探索和实践
    git 更新某个目录或文件
    Redis中删除过期Key的三种策略
    MySql(Innodb)事务隔离级别
    Maven的依赖范围
    Maven入门和介绍
    IDEA(Web项目忽略配置文件后)导入项目,拉取项目后的配置
    IDEA(普通项目忽略配置文件后)导入项目,拉取项目后的配置
    Maven的pom文件中标签含义
  • 原文地址:https://www.cnblogs.com/cnsec/p/11515916.html
Copyright © 2020-2023  润新知