php专区

 首页 > php专区 > 正则表达式 > php session 入门教程 - php会话

php session 入门教程 - php会话

分享到:
【字体:
导读:
          session,中文名称为会话,它是指一类用来在客户端和服务器间保持会话连接状态的解决方案,同时由于其的广泛应用性,PHP作为一种web开发语言,当然也是完全的支持Session机制...

php session 入门教程

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中的相关变量,其用法如下:

  1.   $val = "session value"
  2.   session_register("val"); 
  3.  ?> 

val即为要注册的session变量名,在注册时一定不要加上"$"符号,只写其变量名称即可.

3.函数session_unregister()与上面函数用法完全相同,但功能相反,上面函数是注册session变量,而其则是删除指定的session变量.

4.函数session_is_registered()用于判断session变量是否注册.

5.函数session_destroy()主要用于在系统注销和退出时,销毁所有的session变量,它没有参数,直接调用即可.

下面是一个简单的完整的使用样例程序:

  1.  session_start(); 
  2.  $val = "session value"
  3.  session_register("val"); 
  4.  if(session_is_registered("val")) { 
  5.   session_unregister("val"); 
  6.  } 
  7.  else { 
  8.   echo "val变量还未进行注册"
  9.  } 
  10.  session_destroy(); 
  11. ?> 
分享到:
Php中设置Session超时时间登录时间限制 -...
Php中设置Session超时时间登录时间限制 最近某个PHP项目用到了限制登录时间的功能,比如用户登录系统60分钟(www.phpfensi.com)后如果没有操作就自动退出,我搜索了网络收集了有以下方法可供参考. 第一种方法即设置php.ini配置文件,设置session.gc_maxlifetime和session.cookie_lifetime节点属...
php Cookie 详细说明 - php会话
php Cookie 详细说明 1.什么是cookie cookie是一种在远程浏览器端存储数据并以此来跟踪和识别用户的机制. 2.php如何设置cookie 在php中可以使用setcookie()或setrawcookie()函数来设置cookie.cookie是http头的一部分,因此setcookie()等函数必须在其输出数据座之前被调用,这和header()函数...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……