php session原理

client--------->1.request------------------------->server
                       2. session_start();
   |<-------------3.reponse(SESSION_ID)<--------|
   |------------->4.request(SESSION_ID)--------->|
                       5. session_start();
   |<-------------6.reponse(SESSION_ID)<---------|
   |------------->7. request(SESSION_ID + logout)-->|
                      8. session_destroy();
   |<-------------9. reponse(删除cookie文件)<-------|

1.client打开网页,向server发出请求,client上由于没有相应的cookie文件存在,在请求中不输送SESSION_ID

2.服务器在接受到client的请求后,通过执行session_start()函数开始进行session的处理,
首先确认请求中有没有SESSION_ID,如果没有的话,发行一个新的SESSION_ID;如果有的话,
则调用那个存有SESSION_ID的文件,并把信息写入$_SESSION里去,并存入以sess_开头的文件里。

3.把写入信息的$_SESSION参数发回给client,client在GET服务器发来的信息后,把这些信息保存在cookie里。

4.client把cookie里的SESSION_ID一起写入header后再次向server发出请求。重复1-3的操作

7.client发出登出请求

8.服务器接受请求后,通过执行session_destroy()函数开始删除session文件处理

9.服务器向client发出删除保存在client上的cookie文件的命令:   setcookie(session_name(), '', time()-60, '/');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值