了解Cookie
- 什么是Cookie?
Cookie是在HTTP协议下,服务器或脚本可以维护客户工作站上信息的一种方式,是一种在远程浏览器端存储数据并并以此来跟踪和识别用户的机制。简单地说,Cookie是Web服务器暂时存储在用户硬盘上的一个文本文件,并随后被Web浏览器读取。 - Cookie的功能
- 记录访客的某些信息
- 在页面之间传递变量
- 将所查看的Internet页存储在Cookie临时文件夹中,可以提高以后浏览的速度。
创建Cookie
在PHP中通过setcookie()函数创建Cookie.
语法格式如下:
bool setcookie(string name[,string value[,int expire[,string path[,string domain[,intsecure]]]]])
<?php
setcookie("TMCookie",'www.php.cn');
// 设置有效时间为60秒
setcookie("TMCokie",'www.php.cn',time()+60);
// 设置有效时间为1个小时,有效目录为"/tm/",有效域名为php.cn及其所有子域名
setcookie("TMCookie",'www.php.cn',time()+3600,"/tm/",".php.cn",1);
?>
在PHP中 可以直接通过超级全局数组$_COOKIE[]来读取浏览哭端的Cookie值。
删除Cookie可以使用 setcookie()函数删除cookie
了解Session
对比Cookie,会话文件中保存的数据是在PHP脚本中以变量的形式创建的,创建的会话变量在生命周期(20分钟)中可以被跨页的请求所引用。另外,Session是存储在服务器端的会话,相对安全,并且不像Cookie那样有存储长度的限制。
在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统所经过的时间。因此,Session实际上是一个特定的时间概念。
- 创建会话有两种方式:
1.通过 session_start()函数创建会话
2.通过 session_register()函数创建会话 - 删除会话
1.删除单个会话
删除会话变量,同数组的操作一样,直接注销$_SESSION数组的某个元素即可,可以使用 unset()函数,例如:
unset($_SESSION[‘user]);
2.删除多个会话
如果想要一次注销所有的会话变量,可以将一个空的数组赋值给$_SESSION,代码如下:
$_SESSION = array();
3.结束当前会话
如果整个会话已经结束,首先应该注销所有的会话变量,然后使用 session_destrory()函数清除结束当前会话,并清空会话中的所有资源,彻底销毁Session,代码如下:
session_destroy();