Cookie和会话控制

Cookie和会话控制

一、Cookie

Cookie通过HTTP Headers从服务器端返回到浏览器。首先,服务器端在响应中利用Set-Cookie header来创建一个Cookie文件;然后浏览器在它的请求中通过Cookie header包含这个已经创建的Cookie文件,并且返回至服务器,从而完成浏览器的论证。这就是Cookie的原理

1、设置Cookie

格式:bool setCookie(string name[,string value[,int expire[,string path[,string domain[,int secure]]]]])

name:Cookie名字

value:Cookie的值

expire:Cookie的过期时间

path:Cookie在服务器端的有效路径

domain:该Cookie有效的域名

secure:指明Cookie是否仅通过安全的https

2、访问Cookie

php中可以通过$_COOKIE预定义变量来访问Cookie的值。

例如:<? $exam="123";setcookie("test",$exam,time()+1800);?><a href="exam.php">输出Cookie</a>

exam.php:<?php echo($_COOKIE[test]); ?>

3、删除Cookie

删除Cookie最好的方法是用setCookie函数设置Cookie的过期时间

二、会话

1、创建会话

创建会话有两种方法:

(1)设置php.ini中的session.auto_start选项来自动创建会话,但使用该方法会导致无法使用对象作为会话变量。

(2)通过session_start()函数创建会话。

2、注册会话变量

会话变量被启动后,全部保存在数组$_SESSION中,通过$_SESSION创建一个会话变量即给该数组添加一个元素。

例如:$_session['session_name']=session_value;

3、使用会话变量

会话变量的使用就是获取它的值

4、注销会话变量

注销一个会话变量:unset($_SESSION['session_name']

注销所有的会话变量:session_destroy()