Categories: Yii框架教程

Yii – Cookies

Cookies是存储在客户端的纯文本文件。您可以将它们用于跟踪目的。

识别返回用户的三个步骤-

  • 服务器将一组cookie发送到客户端(浏览器)。例如,id或令牌。
  • 浏览器将其存储。
  • 下次浏览器向Web服务器发送请求时,它还会发送这些cookie,以便服务器可以使用该信息来标识用户。

Cookie通常在HTTP标头中设置,如以下代码所示。

HTTP/1.1 200 OK
Date: Fri, 05 Feb 2015 21:03:38 GMT
Server: Apache/1.3.9 (UNIX) PHP/4.0b3
Set-Cookie: name = myname; expires = Monday, 06-Feb-16 22:03:38 GMT;
   path = /; domain = tutorialspoint.com 
Connection: close
Content-Type: text/html

PHP提供了setcookie()函数来设置cookie-

setcookie(name, value, expire, path, domain, security);

其中-

  • 名称-设置cookie的名称,并存储在一个名为HTTP_COOKIE_VARS的环境变量。
  • -设置命名变量的值。
  • 有效期-指定从1970年1月1日格林尼治标准时间00:00:00开始的未来时间(以秒为单位)。在此时间之后,将无法访问Cookie。
  • path-指定cookie有效的目录。
  • -可用于定义非常大的域中的域名。所有cookie仅对创建它们的主机和域有效。
  • 安全性-如果设置为,则意味着cookie仅应通过HTTPS发送,否则,当设置为0时,可以通过常规HTTP发送cookie。

要在PHP中访问cookie,可以使用$ _COOKIE或$ HTTP_COOKIE_VARS变量。

<?php 
   echo $_COOKIE["token"]. "<br />"; 
   /* is equivalent to */ 
   echo $HTTP_COOKIE_VARS["token"]. "<br />"; 
   echo $_COOKIE["id"] . "<br />"; 
   /* is equivalent to */ 
   echo $HTTP_COOKIE_VARS["id"] . "<br />"; 
?>

要删除Cookie,您应将Cookie设置为已过期的日期。

<?php 
   setcookie( "token", "", time()- 60, "/","", 0); 
   setcookie( "id", "", time()- 60, "/","", 0); 
?>
terry

这个人很懒,什么都没有留下~

Share
Published by
terry
Tags: Yii教程

Recent Posts

自定义指令:聊聊vue中的自定义指令应用法则

今天我们来聊聊vue中的自定义…

5 天 ago

聊聊Vue中@click.stop和@click.prevent

一起来学下聊聊Vue中@cli…

2 周 ago

Nginx 基本操作:启动、停止、重启命令。

我们来学习Nginx基础操作:…

2 周 ago

Vue3:手动清理keep-alive组件缓存的方法

Vue3中手动清理keep-a…

3 周 ago

聊聊React和Vue组件更新的实现及区别

React 和 Vue 都是当…

3 周 ago