SESSION技术

SESSION技术

1.session技术初步

​ 为实现业务逻辑的连续性,将部分信息持久化存储在服务器端,保证数据安全性及各个脚本之间的共享。客户端的状态信息存储在服务器端的SESSION数据区,可在网站的不同页面之间传递数据,识别不同的浏览器。

  1. 开启session机制

    session_start();

    开启session会话或者重用已经创建的会话。session文件默认保存在windows的临时路径tmp中,以sess开头。

  2. session读写操作

    session数据的增删改查操作都是通过数组$_SESSION进行的,存储的类型几乎可以为PHP的全部数据类型。数据存储在session文件中,实现同一网站多个页面共享。session数据是基于cookie数据的。

    这里写图片描述

  3. 删除一个session数据

    unset($_SESSION[名称]);

    使用unset语法删除session文件中指定数据,不删除session文件。

    这里写图片描述

  4. 删除所有session信息

    $_SESSION = [];

    $_SESSION设置为空数组。session文件不删除。

  5. 销毁session信息

    session_destroy();

    直接删除session文件,PHP脚本将无法读取session数据。

2.session配置选项

  1. session.name

    设置session依赖的cookie中,cookie数据的名称。PHP脚本将当前会话的名称(session文件的名称)返回给cookie,默认保存在对应cookie的PHPSESSID中。

    这里写图片描述

  2. session.cookie_lifetime

    按照cookie信息,读取服务器端的相应session文件信息。session.cookie_lifetime=0,表示cookie数据生命周期为会话周期。

    这里写图片描述

  3. session.cookie_path

    session所使用的cookie的有效路径

    这里写图片描述

  4. session.cookie_domain

    session所使用的cookie的有效域名,默认当前站点有效

    这里写图片描述

3.session与cookie之间的区别与联系

  1. 区别

    • 存储位置:

      cookie存储在浏览器,session存储在服务器端

    • 数据安全性:

      session存储在服务器端,不易获取,更安全

    • 传输数据量:

      每次请求,cookie传输量较大。传递该网站相关的全部cookie数据

    • 支持的数据类型:

      cookie支持字符串,session支持几乎所有数据类型

  2. 联系

    • 都用来解决HTTP协议无状态、无记忆的不足之处,以实现业务的连续性
    • 都是会话技术的范畴
    • session需要依赖cookie进行数据的传递。禁用cookie后,session无法正常使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值