session与cookie的区别

使用session

启动会话 session_start()      存入会话 $_SESSION['key'] = $value

读取会话 $value = $_SESSION['key']      删除会话 unset($_SESSION['key'])  $_SESSION = array()

结束当前会话 session_destory()

使用cookie

创建 cookiebool setcookie  ( string $name  [, string $value  [, int $expire  = 0  [, string $path  [, string $domain  [, bool $secure  = false  [, bool $httponly  = false  ]]]]]] )

读取 cookie$_COOKIE[key]                   删除 cookiesetcookie(key,value,time()-1)

session的原理:

  http是无状态的协议,客户每次读取web页面时,服务器都打开新的会话,而且服务器也不会自动维护客户的上下文信息。session就是一种保存上下文信息的机制,她是针对每一个用户的,session的内容在服务器端,通过sessionId来区分不同的客户,session是以cookie或url重写为基础的,默认用cookie来实现。

cookie的原理:

        cookie确切的说分为两大类:会话cookie和持久化cookie。会话cookie是存放在客户端浏览器的内存中,他的生命周期和浏览器是一致的,当浏览器关闭会话cookie也就消失了,而持久化cookie是存放在客户端硬盘中,持久化cookie的生命周期是我们在设置cookie时候设置的那个保存时间,session的信息是通过sessionid获取的,而sessionid是存放在会话cookie当中的,当浏览器关闭的时候会话cookie消失,所以sessionid也就消失了,但是session的信息还存在服务器端,只是查不到所谓的session但它并不是不存在。

 

session与cookie的区别:

       1. session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务端可以知道其中的信息

       2. session中保存的是对象,cookie中保存的是字符串

       3. session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到;而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不道德

session与cookie的联系:

       session是需要借助cookie才能正常工作的,如果客户端完全禁止cookie,session将失效

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值