一、区别
1、Cookie是完全保存在客户端。当客户端禁止cookie时将不能再使用;对服务端压力较小;可以指定生存周期;安全性差。
2、Session是存放在服务端的。但session id是存放在客户端的cookie中的,但php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪;服务端压力较大;关闭浏览器后,session失效;安全性较好。
二、cookie
1、设置。
Setcookie(string name, string value, int expire,string path, string domain, int secure)
name是cookie变量名称标识(必须),
value是cookie变量的初始值(必须),
expire 表示该cookie变量的有效时间(时间点,为空时cookie不会保存到客户端,当浏览器关闭,cookie会失效),
path 为该cookie变量的相关路径,
domain 表示cookie变量的网站,在此域名内cookie有效,
secure 则需在 https 的安全传输时才有效。
例:SetCookie("name", "value",time()+3600, "/test", ".test.com", 1)
2、读取。echo $_COOKIE["cookiename"];类似与POST和GET。
3、删除 。SetCookie("cookiename", "")或SetCookie("cookiename", "value" , time()-1);
注:
1、必须在HTML文件的内容输出之前设置;
2、不同的浏览器对Cookie的处理不一致;
3、一个浏览器能创建的Cookie数量最多为30个,并且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能超过20个(未验证);
4、首次访问页面时设置cookie,第二次访问时才能读取cookie值,因为cookie是保存在客户端,需由客户端传至服务端才能读取。
解决方法:设置cookie后,echo "<script>location.href='当前页面'</script>";
三、Session的配置
1、session_start(); //初始化session.需在文件头部
2、$_SESSION[name]=value; //配置Seeeion
3、echo $_SESSION[name]; //使用session
4、isset($_SESSION[name]); // 判断
5、unset($_SESSION[name]); //删除
6、session_destroy(); //删除所有session
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。