Session的工作方式
2015-01-24信息快讯网
Session的工作原理也是这样。
首先,PHP为建立Session的用户产生一个独一无二的字符串,用来标志这个用户的session。一般将这个字符串称作Session Id。然后“sess”+Session Id为文件名(例如一个Session ID为111,那么文件名为sess_111)在服务器的文件系统中建立一个文件,在文件中保存用户在Session所定义的全局变量的变量名和值。然后再将Session Id作为一个名为PHPSession的Cookie保存在用户端的文件系统中。
然后,当用户再次连接服务器访问一个PHP脚本时,PHP从用户发来的PEESession这个Cookie中得到用户所在Session的Session Id,并根据Session Id从服务器的文件系统中保存Session信息的文件。最后从这个文件中读出用户在上次连接时所设置的全局变量的值。
因此,我们可以看到Session的工作原理和我们上一节所介绍的身份认证的工作原理是一样的。所不同的只是Session将信息保存在了服务器的文件系统中,而我们将信息保存在了数据库中。当然使用Session好处就是数据的保存和获取是由PHP自动完成的,而直接使用Cookie的话就需要自己动手进行数据的保存和获取。
Session利用Cookie的身份标志功能,将用户在浏览网站时需要保存的信息保存在服务器上。这样Session既克服了HTTP协议的缺陷,又防止了信息的泄漏,而且方便了编程者的使用,是一个非常好的解决方案。不过,Session的功能只有PHP4支持,PHP3是不支持Session的。因此使用PHP3进行网站构建的读者只能采用直接使用Cookie的方式。
优化使用mysql存储session的php代码
解决php中Cannot send session cache limiter 的问题的方法
PHP session常见问题集锦及解决办法总结
php中的session完全教程第1/2页
php下使用无限生命期Session的方法
[PHP] 《PHP边学边教》(01.开篇――准备工作)
使用数据库保存session的方法
在PHP3中实现SESSION的功能(一)
在PHP3中实现SESSION的功能(三)
建立动态的WML站点(三)
用Flash图形化数据(一)
PHP中Session的概念
多php服务器实现多session并发运行
使用无限生命期Session的方法
一个查看session内容的函数
利用文件属性结合Session实现在线人数统计
本科生找工作最吃香
“沪人口7000万”系误读 统计局就工作疏漏致歉
印尼帅小伙“抢”到首个应届外国留学生工作居留许可
千里驰援万众一心共御震灾——新疆皮山地震灾区抗震救灾工作综述