参考:http://www.w3school.com.cn/php/php_sessions.asp
session变量用于存储有关用户的会话的信息,或更改用户会话的设置,session变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
session的工作机制就是为每一个访问者创建一个唯一的ID(UID),并基于这个UID来储存变量。UID储存在cookie中,亦或通过URL进行传导。
开始PHP session
目录/////////////////////////////////////////////
1.启动会话
2.注册会话
3.使用会话
4.删除会话
/////////////////////////////////////////////////
00x1
session的启动有两种方式:
1.使用session_start函数
2.使用session_register函数
1.session_start #该函数一般放置于页面的首端,在次之前不能有任何输出,否则会导致出错。
2.通过session_register函数创建会话,session_register是用来为会话创建一个变量来隐含的启动会话,但要求设置PHP.ini文件的选项即将reister_globals指令设置为on。然后重新启动apache即可。
使用session_start来创建一个session。
CODE:
<?php session_start(); ?>
<html>
<head><title>test</title></head>
<body>
</body>
</html>
上面的代码会向注册一个用户会话,以便保存用户的信息,同时服务器会为用户会话分配一个UID。
00x2 注册会话
当会话变量被创建了以后,全部的会话都会保存在$_SESSION 变量当中。通过数组$_SESSION要创建一个会话变量直接在数组里面增加元素即可。
例如下面的。启动会话,然后创建了一个admin变量赋值为空。
<?php
session_start();#启动sessioin
$_SESSION['admin'] = null;#声明一个admin的变量。并赋空值。
?>
00x3 使用会话
在使用一个会话之前肯定需要判断惠爱华变量是否有一个会话ID的存在,如果不存在,就创建一个,并且使其能够通过全局数组$_SESSION进行访问。如果已经存在,则将这个已创建的会话变量载入以供用户使用。
一个小的案例:判断admin会话是否为空,如果不为空的话就将其赋值给$myvalue变量。
<?php
if(!empty($_SESSION['admin'])) #判断admin这个会话是否回空。
$myvalue = $_SESSION['admin']; #将会话变量赋值给$myvalue变量。
?>
00x4 删除会话
删除会话有三种。删除当前的会话,所有的会话,单个的会话。
先来讲一下如何删除单个的会话(unset)。
<?php
session_start();
$_SESSION['hello'] = 'world';
unset($_SESSION['hello']); #删除hello这个会话。
?>
删除多个会话
直接将一个空的数组赋值给$_SESSION即可。
<?php
session_start();
$_SESSION['hello'] = 'world';
$_SESSION['ni'] = 'hao';
$_SESSION = array();#直接将一个空的数组赋值给一个$_SESSION即可。
?>
删除当前会话