先看看他们两个的定义:
cookie 常用于识别用户。cookie 是一种服务器留在用户计算机上的小文件。每当同一台计算机通过浏览器请求页面时,这台计算机将会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
PHP session 变量用于存储在服务器上关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。
共同点:
二者都是都是用来跟踪浏览器用户身份的会话方式
二者都有有效期,区别见不同点3
区别:
cookie存储在用户计算机上,session存储在服务器上
基于他们的区别,会导致几种不同的后果:
1. 存储在用户计算机的cookies容易被恶意更改、欺骗;所以追求安全的数据请用php的session
2. session存储在服务器上,访问量变多时,会占用服务器性能。
3. session的有效期取决于服务器的设置,cookie的有效期是在生成时设置进去的。
综上:
登陆等重要信息请用session,其他的可以使用cookie。