设置Cookie

PHP

setcookie("name", "Larry",time()+3600

Yii2

$cookies = Yii::$app->response->cookies;
$cookies->add(new \yii\web\Cookie([
'name' => 'name',
'value' => 'Larry',
'expire'=>time()+3600
]));

创建名为nameCookie,赋值为Larry,并且规定该Cookie一小时后失效

expire参数是一个UNIX时间戳,如果设置为0,或省略,该Cookie将在浏览器关闭时消失

获取Cookie

PHP

$name=$_COOKIE["user"]

Yii2

$cookies = Yii::$app->request->cookies;//注意此处是request
$language = $cookies->get('user', 'defaultValue');

检查Cookie

PHP

if(isset($_COOKIE["user"])){

Yii2

$cookies = Yii::$app->request->cookies;
if (isset($cookies['user'])){
if ($cookies->has('user')){
if (isset($cookies['user'])){

删除Cookie

PHP

setcookie("user", "", time()-3600);//把失效日期设置为过去1小时
unset($_COOKIE['user']);

Yii2

$cookies = Yii::$app->request->cookies;
$cookies->remove('user');

常见问题

  • Cookiekey不能含“.” 符号,会被解析成_,导致具有以上符号的key获取不到Cookie的bug

  • 区分Yii2中 Yii::$app->request->cookies 和 Yii::$app->response->cookies 不仔细容易直接复制粘贴了。

    1.如果把第一个用来设置Cookie,会报错:The cookie collection is read only

    2.如果把第二个用来获取Cookie,程序正常执行未发生异常,但会获取不到Cookie,不容易察觉。。。

  • Cookiekey区分大小写

PHP/Yii2操作Cookie,常见问题以及注意事项的更多相关文章

  1. JavaScript 操作 Cookie

    转自作者:聂微东出处:http://www.cnblogs.com/Darren_code/      什么是 Cookie “cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器 ...

  2. Cookie介绍及JavaScript操作Cookie方法详解

    本文主要为大家简单介绍了以下Cookie的用途.运行机制,以及JavaScript操作Cookie的各种方法,总结的比较全面,希望能给大家带来帮助. 什么是 Cookie “cookie 是存储于访问 ...

  3. Skywalking部署常见问题以及注意事项

    Skywalking部署常见问题以及注意事项 Intro SkyWalking 创建与2015年,提供分布式追踪功能.从5.x开始,项目进化为一个完成功能的Application Performanc ...

  4. activemq消息队列的使用及应用docker部署常见问题及注意事项

    activemq消息队列的使用及应用docker部署常见问题及注意事项 docker用https://hub.docker.com/r/rmohr/activemq/配置在/data/docker/a ...

  5. js简单操作Cookie

    贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...

  6. Jquery操作cookie,实现简单的记住用户名的操作

     一.jquery.cookie.js介绍  jquery.cookie.js是一个基于jquery的插件,一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cook ...

  7. jquery.cookie.js 操作cookie实现记住密码功能的实现代码

    jquery.cookie.js操作cookie实现记住密码功能,很简单很强大,喜欢的朋友可以参考下.   复制代码代码如下: //初始化页面时验证是否记住了密码 $(document).ready( ...

  8. Asp.net操作cookie大全

    实例代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3 ...

  9. ASP.NET 操作Cookie详解 增加,修改,删除

    ASP.NET 操作Cookie详解 增加,修改,删除 Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109.它 ...

随机推荐

  1. openwrt安装编译

    官网安装编译推荐: https://wiki.openwrt.org/doc/howto/buildroot.exigence https://wiki.openwrt.org/doc/howto/b ...

  2. Datagrid方法扩展 - tooltip

    最新版本的jQuery Easyui新出来了一个组件叫tooltip,就是提示框.以前的版本没有这个组件的时候就有很多在问,datagrid的单元格,我要加鼠标提示要怎么做.原来我告诉他们的方法都是用 ...

  3. 通知:spark meetup 第六次会议在北京举行

    通知: Spark北京Meetup第六次活动(­机器学习专题) 将于北京时间3月21日 下午14:00-18:00 在微软亚太研发集团总部大厦1号楼举行,主题包括: Julien Pierre  Pr ...

  4. JS常用的方法总结

    /** * 将参数格式化为对象 * @param urlParams type string * @example * let urlParams = 'name="xiaoliu" ...

  5. centos虚拟机复制后网络重启出错解决

    参考:http://blog.csdn.net/xluren/article/details/38986667 执行service network restart后出现如下错误 FAILED: Bri ...

  6. CMake error:System Error:No such file or directory CMake error:Could not open file for write in copy operation xxxx.ros_Config.cmake.tmp.

    微型电脑或嵌入式与电脑还是有点不同的,在微型电脑上ros indigo 版本下利用catkin编译如果你遇到如下错误: CMake error:System Error:No such file or ...

  7. ios - 上下滚动的新闻

    #import <UIKit/UIKit.h> @interface ScrollUpDownView : UIView //设置 要现实的文字 @property(nonatomic, ...

  8. Socket使用及简单实例

    一.搭建服务器端 a).创建ServerSocket对象绑定监听端口. b).通过accept()方法监听客户端的请求. c).建立连接后,通过输入输出流读取客户端发送的请求信息. d).通过输出流向 ...

  9. shell编程实战总结

    最近复习一下shell,顺便高级进阶一下,之前写脚本能简单尽量简单来,发现好多高深的东西还是没有理解,因此在这里记录一下整个过程并做相应的总结. 通过上代码的方式来介绍,后续可能会调整相应的排版 1. ...

  10. 当公有云Azure拥抱Docker容器技术

    本文转载至 http://3387405.blog.51cto.com/3377405/1598977 预见未来看似是一件不太可能的事情,然而现在企业科技高速发展的态势完全超乎想象. 就在几周前Inf ...