session 和 cookie的机制与流程

什么是会话(session)

  1. 我们知道http协议的一个主要的特点就是无状态,所以从一个请求到另外一个请求,我们从何去知道这些请求是否都是来自于同一个用户?或者说我们要怎么‘跟踪’一个用户?实际上会话的应用场景还有很多,登陆、权限管理、购物车等。

session基本功能

  1. php中所有的session都是通过一个session id来驱动的,session id
    是一个经过加密后的随机数字。它由php生成,可以通过cookie或者url被客户端获取,session id 允许我们命名一些变量,这些变量也被称作session变量,session变量只保存在服务器端。
 <?php
 session_start();//开始一个会话
 $_SESSION['name'] = 'Tom';//注册session变量
 //TODO 业务逻辑
 $_SESSION = array();//销毁session变量
 session_destroy();//清除session id

什么是cookie

  1. 在会话的机制中,cookie是客户端的解决方案,客户端可以通过cookie或者url两种方法来获取session id,那么我们就可以访问之前注册的保存在服务端的session变量。浏览器访问一个url的时候,先会去找本地保存的cookie,如果找到与这个url相关的cookie就将它发送给服务器。

  2. 在php中,可以使用setcookie()函数来手动设置cookie

<?php 
setcookie('mycookie',value);//手动设置一个cookie 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值