一 Cookie技术
1 定义:客户端技术,服务器把每个用户的数据以cookie的形式发送给浏览器。用户再次访问该web站点资源时,会带上Cookie进行识别认证。
2 流程说明
(1)浏览器访问页面xxx.php,
(2)服务器会回送自定义的cookie信息(setcookie)
(3)浏览器接收到响应后将cookie信息存储到客户端,后续携带cookie访问页面资源。
windows中Chrome浏览器默认存储Cookie位置为
C:\Users\Username\AppData\Local\Google\Chrome\User Data\Default\Cookies.txt
不同系统和不同浏览器存储位置不同,基本上以*.txt格式存储。
3 Cookie的基础使用
setCookie(key,value,time()+second); //second是保存cookie的时间,为正保存cookie,为负删除cookie
$_COOKIE //包含cookie的所有信息,具体值可通过$cookie[key]读取
//可参考php手册中 函数参考-其他服务-网络-网络函数
cookie是会话级别的,因为它存储在浏览器内存中,若未设置cookie值保存时间,则用户退出浏览器该cookie即被删除。
若想把cookie存储到磁盘上,需要使用expire。
Cookie的用途:
(1)保存上一次登录时间;
(2)保存用户名、密码,免重复登录;
(3)记录用户偏好,网站个性化定制等。
二 Session技术
1 定义:Session是服务端技术,服务器在运行时可以为每一个用户的浏览器创建一个session文件,不同用户的文件存储到不同session文件中。
2 流程说明
(1)浏览器访问服务端页面,服务端通过session函数在服务器存储session值
(2)服务器传回浏览器cookie值,http头中携带,其中cookie是服务器给的随机码,值与session保存在服务器端的文件名一致;
(3)浏览器访问其他页面时,通过cookie定位文件,读取该会话的session文件。
3 Session的基础使用
session_start(); //启动session,读取、添加、销毁时都要使用
$_SESSION //包含session的所有信息,session可以保存double、int、bool、array、object类型
session_destoy(); //删除当前会话的所有session
//可查看php手册 函数参考-session扩展
Session的用途:
1 用户信息存储;
2 保存登录信息;
3 防止非法登录等
三 Session和Cookie的区别
Cookie写在客户端,通过浏览器进行保存;
Session存储在服务端,存在服务器磁盘中。
文章通过学习韩顺平讲解php内容总结,如有侵权立删。