cookie函数也是一个多元化操作函数,完成cookie的设置、获取和删除操作。

Cookie 用于Cookie 设置、获取、删除操作

用法
cookie($name, $value='', $option=null)

参数
name(必须):要操作的cookie变量
value(可选):要设置的cookie值
option(可选):传入的cookie设置参数,默认为空

返回值
见详(根据具体的用法返回不同的值)

Cookie设置

  1. cookie('name','value'); //设置cookie
  2. cookie('name','value',3600); // 指定cookie保存时间

复制代码

3.1版本开始,cookie方法增加对数组的支持(采用轻量级的json编码格式保存 减少存储空间),例如:[-more-]

  1. cookie('name',array('name1','name2'));

复制代码

还可以支持参数传入的方式完成复杂的cookie赋值,下面是对cookie的值设置3600秒有效期,并且加上cookie前缀think_

  1. cookie('name','value',array('expire'=>3600,'prefix'=>'think_'))

复制代码

数组参数可以采用query形式参数

  1. cookie('name','value','expire=3600&prefix=think_')

复制代码

和上面的用法等效。
传入的option参数支持prefix,expire,path,domain四个索引参数,如果没有传入或者传入空值的话,会默认取COOKIE_PREFIX、COOKIE_EXPIRE、COOKIE_PATH和COOKIE_DOMAIN四个配置参数。如果只传入个别参数,那么也会和默认的配置参数合并。

Cookie获取

获取cookie很简单,无论是怎么设置的cookie,只需要使用:

  1. $value = cookie('name');

复制代码

如果没有设置cookie前缀的话 相当于

  1. $value = $_COOKIE['name']

复制代码

如果设置了cookie前缀的话,相当于

  1. $value = $_COOKIE['前缀+name']

复制代码


Cookie删除

删除某个cookie的值,使用:

  1. cookie('name',null);

复制代码

要删除所有的Cookie值,可以使用

  1. cookie(null); // 清空当前设定前缀的所有cookie值
  2. cookie(null,'think_'); //  清空指定前缀的所有cookie值

ThinkPHP函数详解:cookie方法的更多相关文章

  1. ThinkPHP函数详解:session方法

    ThinkPHP函数详解:session方法 Session方法用于Session 设置.获取.删除和管理操作. Session 用于Session 设置.获取.删除和管理操作 用法    sessi ...

  2. ThinkPHP函数详解:I方法

    ThinkPHP的I方法是3.1.3版本新增的,如果你是之前的3.*版本的话,可以直接参考使用3.1快速入门教程系列的变量部分. 概述 正如你所见到的一样,I方法是ThinkPHP众多单字母函数中的新 ...

  3. ThinkPHP函数详解:C方法

    C方法是ThinkPHP用于设置.获取,以及保存配置参数的方法,使用频率较高.了解C方法需要首先了解下ThinkPHP的配置,因为C方法的所有操作都是围绕配置相关的.ThinkPHP的配置文件采用PH ...

  4. ThinkPHP函数详解:D方法

    从本篇开始,我们会陆续给大家详细说明下框架内置函数的用法. D方法 D方法应该是用的比较多的方法了,用于实例化自定义模型类,是ThinkPHP框架对Model类实例化的一种封装,并实现了单例模式,支持 ...

  5. ThinkPHP函数详解:U方法

    U方法用于完成对URL地址的组装,特点在于可以自动根据当前的URL模式和设置生成对应的URL地址,格式为:U('地址','参数','伪静态','是否跳转','显示域名');在模板中使用U方法而不是固定 ...

  6. ThinkPHP函数详解:M方法

    M方法用于实例化一个基础模型类,和D方法的区别在于:1.不需要自定义模型类,减少IO加载,性能较好:2.实例化后只能调用基础模型类(默认是Model类)中的方法:3.可以在实例化的时候指定表前缀.数据 ...

  7. ThinkPHP函数详解:import方法

    import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库.扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来 ...

  8. ThinkPHP函数详解:F方法

    我们已经了解了ThinkPHP中的S方法的用法,F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我 ...

  9. ThinkPHP函数详解:cache方法

    cache方法是3.0版本开始新增的缓存管理方法.注意:3.1.2版本后因cache方法并入原S方法,所以cache方法不再建议使用,用S方法即可. cache 用于缓存设置.获取.删除操作 用法ca ...

随机推荐

  1. JSOI2009 游戏

    1443: [JSOI2009]游戏Game Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 557  Solved: 251[Submit][Stat ...

  2. 基于.NET平台的分布式应用程序的研究

    摘 要:.NET框架是Microsoft用于生成分布式Web应用程序和Web服务的下一代平台.概述了用于生成分布式应用程序的.NET框架的基本原理.重点讲述了.NET框架的基础:公共语言运行时(CLR ...

  3. FP树(附)

    Apriori算法和FPTree算法都是数据挖掘中的关联规则挖掘算法,处理的都是最简单的单层单维布尔关联规则. 转自http://blog.csdn.net/sealyao/article/detai ...

  4. git高级应用

    高级应用之一:   二分法查找错误版本: 当前日志 $ git log --oneline ccda9d2 added test1 dd518f7 test zu 88095f9 dasfdasf 3 ...

  5. 代码修改mysql字符

    为了不再显示的时候乱码,要修改数据库默认编码.以下以GBK编码页面为例进行说明: 1.修改MYSQL的配置文件:my.ini里面修改default-character-set=gbk2.代码运行时修改 ...

  6. A Tour of Go Forever

    If you omit the loop condition it loops forever, so an infinite loop is compactly(简洁地:紧密地:细密地) expre ...

  7. JS跨域笔记

    什么是跨域,跨域是指不同域之间相互访问,只要协议.域名.端口有任何一个不同,都被当作是不同的域. 对于端口和协议的不同,只能通过后台来解决,前台是无能为力的. 受浏览器同源策略的限制,本域的js不能操 ...

  8. 1、IIS常见的的问难及解决方法

    配置IIS 7.5 出现的问题及解决办法: 1.问题:  CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Tempor ...

  9. flot图插件使用

    <div id="budget-charts"></div> <script src="../../../plugins/ace/js/fl ...

  10. easyui datagrid用formtater的问题

    当value是一个字符串是直接使用value会提示value没有定义,这时需要转换下value,用""+value来替换就可以了.