session,中文名称为会话,它是指一类用来在客户端和服务器间保持会话连接状态的解决方案,同时由于其的广泛应用性,PHP作为一种web开发语言,当然也是完全的支持Session机制. 1.什么是session session,中文名称为会话,它是指一类用来在客户端和服务器间保持会话连接状态的解决方案,同时由于其的广泛应用性,php作为一种web开发语言,当然也是完全的支持session机制. 具体针对web网站来说,session指用户在浏览某个网站时,从进入网站到浏览器关闭所经过的时间,由此可知,session实际上是一个特定的时间概念. 通过使用session,我们就可以在网站的上下文不同页面间传递变量,将session用于用户身份认证,程序状态记录等,最常见的形式就是配合cookie使用,实现保存用户登录状态等功能. 2.php session用法 每一个网站访客都会被分配给一个唯一的标志符,即会话id,它的存放形式无非两种:要么经过url传递,要么保存在客户端的cookies里.当然,你也可以将session保存到数据库里,这样会更安全,但效率方面会有所下降.url方式传递安全性肯定太差,php的会话机制是通过设置cookie,在cookies中保存会话id(session id),在服务器端会生成session文件,与用户进行关联,web应用程序存储与这些session相关的数据,并在各页面间进行传递. 3.php session函数及使用 在php中有关session的函数比较多,不过我们最常用到的也就这么几个函数: session_start(), session_register(),session_unregister(), session_is_registered(),session_destroy函数. session_start():启用session机制,在需要用到session的程序文件的最开始调用它. session_register():注册session变量 session_unregister(): 删除session变量(一个一个删除) session_is_registered(): 判断session变量是否注册 session_distroy(): 销毁所有session变量(所有session变量销毁) 需要注意下面几个方面: 1.函数session_start()必须在程序最开始执行,在其前面不能有任何输出内容,否则就会出现“warning:cannot send session cookie - headers already sent"类似这样的警告信息. 2.函数session_register()用于注册要保存在session中的相关变量,其用法如下:
val即为要注册的session变量名,在注册时一定不要加上"$"符号,只写其变量名称即可. 3.函数session_unregister()与上面函数用法完全相同,但功能相反,上面函数是注册session变量,而其则是删除指定的session变量. 4.函数session_is_registered()用于判断session变量是否注册. 5.函数session_destroy()主要用于在系统注销和退出时,销毁所有的session变量,它没有参数,直接调用即可. 下面是一个简单的完整的使用样例程序: (责任编辑:admin) |