首页 > 代码库 > session_start()的逻辑
session_start()的逻辑
//session_start —Start new or resume existing session
session_start();
print_r($_SESSION);
//看有没有session对象,看请求头部有PHPSESSID该键=>值对的cookie不,有则通过该id,看能不能查找到对应id的session对象
//通常情况下,服务器有接受到PHPSESSID,则该session存在
请求头部没有PHPSESSID该键=>值的cookie,说明服务器还没有session对象,则创建一个session对象(并在响应头的set-cookei里写入键=>值对,通知浏览器在本地保存该session的id,同一会话内下次再进入该页面就不用新建session对象了,)
//不能手动删除session对象在浏览器保存的PHPSESSID(如果可以手动删除的话,那就想在服务器创建很多$_SESSION超全局数组了,服务器肯定不同意的,你想在session_start()前删除PHPSESSID,同一次会话,下次进来就会创建新的session对象了,
setcookie(PHPSESSID,"",time()-100);
session_start();
不行的,PHPSESSID只有服务器自己能删除,这样才能保证$_SESSION变量的唯一性在一个进程中
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。