学习要点:
1.Cookie 的应用
2.Session 会话处理

HTTP(超文本传输协议)定义了通过万维网(WWW)传输文本、图形、视频和所有其他数据所有的规则。HTTP 是一种无状态的协议,说明每次请求的处理都与之前或之后的请求无关。虽然这种简化实现对于 HTTP 的普及做出了卓越的贡献,但对于希望创建复杂的Web 应用程序的开发人员来说,这点有点困扰。为了解决这个问题,出现了一种在客户端机器上存储少量信息(cookie )。
由于 cookie 大小限制、数量及其他原因,开发人员又提出了一种解决方案:session 会话处理。

一.Cookie 的应用
设置 cookie :setcookie()函数可以在客户端生成一个 cookie 文件,这个文件可以保存到期时间、名称、值等。

创建 cookie

<?php
setcookie('name' ,'Lee' ,time()+( 7* 24 * 60 * 60 ));
?>

参数 1:cookie 名称
参数 2:cookie 值
参数 3:cookie 过期时间

读取 cookie

<?php
echo $_COOKIE['name' ];
?>

 
删除 cookie

<?php
setcookie('name' ,'' );
setcookie('name' ,'Lee' ,time()- 1);
?>

 
使用 Cookie 的限制
1、必须在 HTML 文件的内容输出之前设置;
2、不同的浏览器对 Cookie 的处理不一致,且有时会出现错误的结果。
3、限制是在客户端的。一个浏览器能创建的 Cookie 数量最多为 30 个,并且每个不能超过 4KB,每个 WEB 站点能设置的 Cookie 总数不能超过 20 个。

二.Session 会话处理
在使用 session 会话处理,必须开始 session,使用 session_start()开始会话。
创建 session 并读取 session

<?php
session_start();
$_SESSION ['name' ] = 'Lee' ;
echo $_SESSION ['name' ];
?>

 
判断 session 是否存在

<?php
session_start();
$_SESSION ['name' ] = 'Lee' ;
if (isset ($_SESSION ['name' ])) {
echo $_SESSION ['name' ];
}
?>

 
删除 session

<?php
session_start();
$_SESSION ['name' ] = 'Lee' ;
unset($_SESSION ['name' ]);
echo $_SESSION ['name' ];
?>

 
销毁所有 session

<?php
session_start();
$_SESSION ['name' ] = 'Lee' ;
$_SESSION ['name2' ] = 'Lee' ;
session_destroy();
echo $_SESSION ['name' ];
echo $_SESSION ['name2' ];
?>