PHP中Session的概念


Posted in PHP onOctober 09, 2006

什么是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。

PHP 相关文章推荐
第十一节 重载 [11]
Oct 09 PHP
开发大型PHP项目的方法
Oct 09 PHP
DedeCMS 核心类TypeLink.class.php摘要笔记
Apr 07 PHP
PHP防止跨域提交表单
Nov 01 PHP
php设计模式之简单工厂模式详解
Sep 04 PHP
php+mysql实现无限分类实例详解
Jan 15 PHP
PHP5.2中PDO的简单使用方法
Mar 25 PHP
PHP获取指定时间段之间的 年,月,天,时,分,秒
Jun 05 PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 PHP
PHP自定义函数实现数组比较功能示例
Oct 19 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
Dec 02 PHP
Laravel框架自定义分页样式操作示例
Jan 26 PHP
虚拟主机中对PHP的特殊设置
Oct 09 #PHP
用Flash图形化数据(二)
Oct 09 #PHP
用php来检测proxy
Oct 09 #PHP
如何将一个表单同时提交到两个地方处理
Oct 09 #PHP
PHP制作图型计数器的例子
Oct 09 #PHP
多php服务器实现多session并发运行
Oct 09 #PHP
提升PHP速度全攻略
Oct 09 #PHP
You might like
全国FM电台频率大全 - 11 浙江省
2020/03/11 无线电
php下将多个数组合并成一个数组的方法与实例代码
2011/02/03 PHP
利用PHP实现开心消消乐的算法示例
2017/10/12 PHP
为超链接加上disabled后的故事
2010/12/10 Javascript
jquery实现固定顶部导航效果(仿蘑菇街)
2013/03/21 Javascript
在jQuery中 关于json空对象筛选替换
2013/04/15 Javascript
Android中的jQuery:AQuery简介
2014/05/06 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
JS实现淡入淡出图片效果的方法分析
2016/12/20 Javascript
浅谈JavaScript 代码整洁之道
2018/10/23 Javascript
JavaScript实现的级联算法示例【省市二级联动功能】
2018/12/25 Javascript
JS使用对象的defineProperty进行变量监控操作示例
2019/02/02 Javascript
Python开发编码规范
2006/09/08 Python
Python常用模块介绍
2014/11/21 Python
python文件操作之目录遍历实例分析
2015/05/20 Python
python中模块的__all__属性详解
2017/10/26 Python
Python随机生成均匀分布在单位圆内的点代码示例
2017/11/13 Python
python与caffe改变通道顺序的方法
2018/08/04 Python
Python while循环使用else语句代码实例
2020/02/07 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
Python如何通过百度翻译API实现翻译功能
2020/04/02 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
如何在Windows中安装多个python解释器
2020/06/16 Python
Python爬虫之Selenium设置元素等待的方法
2020/12/04 Python
浅析HTML5 meta viewport参数
2020/10/28 HTML / CSS
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
人力资源管理专业毕业生自我评价
2013/09/21 职场文书
受欢迎的大学生自我评价
2013/12/05 职场文书
银行柜员与客户起冲突检讨书
2014/09/27 职场文书
前台文员岗位职责
2015/02/04 职场文书
2015年底工作总结范文
2015/05/15 职场文书
开票证明
2015/06/23 职场文书
python3读取文件指定行的三种方法
2021/05/24 Python
Python数据可视化之绘制柱状图和条形图
2021/05/25 Python
彻底解决MySQL使用中文乱码的方法
2022/01/22 MySQL
Nginx 匹配方式
2022/05/15 Servers