标签:
会话控制是一种面向连接的可靠通信方式,通常根据会话控制记录判断用户登录的行为。会话控制的思想就是允许服务器跟踪同一个客户端做出的连续请求。这样,我们就可以很容易地做到用户登录的支持,而不是在每浏览一个网页时都去重复执行登录的动作。
一、Cookie
Cookie是一种由服务器发送给客户端的片段信息,存储在客户端浏览器的内存或硬盘上,在客户对该服务的请求中发回它。PHP透明地支持HTTP Cookie。
1、在PHP脚本中设置和读取Cookie的资料内容
1 setcookie("username",‘ziiqing‘,time()+60*60*24*7); 2 //输出Cookie中保存的用户信息 3 print_r($_COOKIE);
2、数组形态的Cookie应用
1 <?php 2 setcookie("user[‘username‘]",‘ziqing‘); //设置为$_COOKIE["user"]["username"] 3 setcookie("user[‘password‘]",md5("123456")); 4 setcookie("user[‘email‘]","1044649609@qq.com"); 5 6 //遍历$_COOKIE[‘user‘]数组 7 foreach ($_COOKIE[‘user‘] as $key => $value) { 8 echo $key.$value."<br/>"; 9 };
3、删除Cookie
1 <?php 2 //只指定Cookie识别名称一个参数 3 setcookie("account"); 4 //设置Cookie过期 5 setcookie("isLogin","",time()-1);
二、Session
Session技术与Cookie相似,都是用来存储使用者的相关资料。但最大的不同在于Cookie是将数据存放于客户端的计算机之中,而Session则是将数据存放于服务器系统之下。
Session就是这样,在客户端仅需要保存由服务器为用户创建的一个Session标识符,Session ID会保存在客户端的Cookie里,如果用户阻止Cookie的使用,则可以将Session ID保存在用户浏览器地址栏的URL中。
1、注册一个会话变量和读取Session
1 <?php 2 //启动Session的初始化 3 session_start(); 4 //注册Session变量 5 $_SESSION[‘username‘] = "songziqing"; 6 $_SESSION[‘uid‘] = 1; 7 var_dump($_SESSION);
2、注销变量与销毁Session
1 <?php 2 //启动Session的初始化 3 session_start(); 4 //注册Session变量 5 $_SESSION[‘username‘] = "songziqing"; 6 $_SESSION[‘uid‘] = 1; 7 var_dump($_SESSION); 8 var_dump($_COOKIE); 9 10 //删除所有的Session变量,也可以用unset($_SESSION[+++])逐个删除 11 $_SESSION = array(); 12 //如果使用基于Cookie的Session,使用setcookie()删除包含session id的Cookie 13 if(isset($_COOKIE[session_name()])) 14 { 15 setcookie(session_name(),‘‘,time()-3600,‘/‘); 16 } 17 //彻底销毁Session 18 session_destroy(); 19 var_dump($_SESSION); 20 var_dump($_COOKIE);
标签:
原文地址:http://www.cnblogs.com/songziqing/p/5400364.html