码迷,mamicode.com
首页 > Web开发 > 详细

php中session的理解

时间:2015-07-08 13:05:12      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

1.session的概念

   session是存储在服务器端的一些用户信息,存储方式默认为存储在文件中(session.save_handler = files),存储路径为(session.save_path = "/letv/sessions")

2.session的起始和结束

    在php中session的起始创建为执行session_start();时,这段代码有这么几个功能:1)创建了$_SESSION变量(如果没有这段代码的话var_dump($_SESSION);时会显示NULL)2)     在指定的session.save_path目录中创建了一个sess_xxx(sessionid)的文件(如果之前没有这个文件)3)在客户端浏览器中创建了一个cookie,如图所示,这里的value即为sessionid技术分享

    然后我们可以使用$_SESSION变量进行一些操作了,比如赋值($Name = "this is test session";$_SESSION[‘Name‘] = $Name;)、运算等等,在脚本执行结束后,服务器会将        $_SESSION中的变量序列化后存放到对应的文件中去,如图所示技术分享

   好,如果此时浏览器并没有关闭(因为关闭浏览器后,session即结束了生命周期),你可以打开一个新的脚本(例:add?xxx),在新的脚本中可以获取$_SESSION(记得首先一定要执行session_start();)为什么能获取到服务器中的值呢?它的执行过程应该是这样的:

   在执行新的脚本的时候,请求中会带有浏览器中种的session的cookie值,如图技术分享

   在进行session_start();的时候会获取到传过来的sessionid,然后验证一下session的保存路径中有无sess_sessionid文件,如果有的话就将该文件中的内容拿出来,整理后存入$_SESSION变量中,如果没有的话就创建这个文件,同时将$_SESSION = array();



以上是个人对php中session的理解,欢迎拍砖~!~


版权声明:本文为博主原创文章,未经博主允许不得转载。

php中session的理解

标签:

原文地址:http://blog.csdn.net/lppklm/article/details/46799663

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!