用cookie实现php中的会话控制

版权声明:转载请附上文章地址 https://blog.csdn.net/weixin_38134491/article/details/86701987

访问一个web页面需要使用http协议实现,但http协议是无状态协议,就是说http没有一个内联机制来维护

两个事物之间的状态,当用户请求一个页面之后再请求同一个网站的另一个页面的时候http协议并不知道这两次

请求都来自同一个用户,也就是两次访问联系不在一起!

cookie

cookie是将网站的资料记录在客户端的技术, 当用户成功登录网站后

他的信息会被保存在客户端然后实现访问同一个网站(请服务器请求发出请求)无需再输入个人信息的操作

  • 向客户端在设置cookie:

setcookie();

var_dump(setcookie('name','罗宾房',time()+3600));

设置了setcookie()之后再访问这个网站的别的页面时都默认携带了用户的信息,有效时间为1个小时

比如说可以用下面的$_COOKIE变量获取到存储的用户信息

  • 在服务器端读取cookie的内容:

$_COOKIE;

var_dump($_COOKIE);

 用这个变量我们判断请求是不是来自同一个用户

  • 将多维数组引用于cookie中:

setcookie("member[name]", 'Robin');

setcookie("member[email]", '[email protected]')

var_dump(setcookie("member[name]",'罗宾房',time()+3600));
var_dump(setcookie("member[email]",'[email protected]',time()+3600));

 

/* 产生随机ID */
$id=uniqid(rand(1000,9999).'_');
var_dump(setcookie('id',$id,time()+3600));
  • 删除cookie:

setcookie("member",' ',time( )-1);

var_dump(setcookie("member[name]",'',time()-3600));
var_dump(setcookie("member[email]",'',time()-3600));

/* 用循环删除记录 */
foreach ($_COOKIE['member'] as $key=>$val){
    var_dump(setcookie("member[$key]",'',time()-3600));
}

不同浏览器获识别用户cookie id是不同的

猜你喜欢

转载自blog.csdn.net/weixin_38134491/article/details/86701987