PHP中Session的概念
更新时间:2006年10月09日 00:00:00 作者:
什么是Session呢?Session直接翻译成中文比较困难,一般都译成时域。在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。具体到Web中的Session指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间。因此从上述的定义中我们可以看到,Session实际上是一个特定的时间概念。
需要注意的是,一个Session的概念需要包括特定的客户端,特定的服务器端以及不中断的操作时间。A用户和C服务器建立连接时所处的Session同B用户和C服务器中建立连接时所处的Sessions是两个不同的Session。
那什么是Session的解决方案呢?我们知道,用户访问一个网站时往往需要浏览许多网页。对于一个通过PHP构筑的网站来说,用户在访问的过程中需要执行许多的PHP脚本。然而由于HTTP协议自身的特点,用户每执行一个PHP脚本都需要和Web服务器重新建立连接。又由于无状态记忆的特点,此次连接无法得到上次连接的状态。这样,用户在一个PHP脚本中对一个变量进行了赋值操作,而在另外一个PHP脚本中却无法得到这个变量的值。例如,用户在负责登录的PHP脚本中设置了$user="wind",却无法在另一个PHP脚本中通过调用$user来获得“wind”这个值。也就是说,在PHP中无法设置全局变量。每个PHP脚本中所定义的变量都是只在这个脚本内有效的局部变量。
Session解决方案,就是要提供在PHP脚本中定义全局变量的方法,使得这个全局变量在同一个Session中对于所有的PHP脚本都有效。上面我们提到了,Session不是一个简单的时间概念,一个Session中还包括了特定的用户和服务器。因此更详细地讲,在一个Session定义的全局变量的作用范围,是指这个Session所对应的用户所访问的所有PHP。
例如A用户通过Session定义了一个全局变量$user=“wind”中,而B用户通过Session定义的全局变量$user=“jane”。那么在A用户所访问的PHP脚本中,$user的值就是wind。
相关文章
函数必须调用才能执行,可以在声明之前调用,也可以在声明之后调用2011-06-06
PHP学习之PHP运算符...2006-10-10
PHP使用者状态管理功能的应用...2006-10-10
数据库的基本概念data 数据database 数据库
DBMS 数据库管理系统DBS 数据库系统sql 是结构化查询语言2008-06-06
关于文本留言本的分页代码...2006-10-10
IIS即可以支持php也可以支持asp.相信得到不少人青睐.
下面的配置文档希望可以帮助大家顺利完成php环境搭建.不正确的地方请大家指正批评.2008-11-11
今天,看了一段代码,里面用到了很多call_user_func_array()函数,一开始,也是非常的迷糊,后来经过查手册发现,call_user_func_array()函数还是很好用的,所以把PHP中call_user_func_array()函数用法用简单的代码示例来说明一下2012-02-02
PHP自动更新新闻DIY...2006-10-10
如何在PHP中进行身份认证...2006-10-10
今天小编就为大家分享一篇关于PHP PDOStatement::errorCode讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2019-01-01
最新评论