ThinkPHP对Cookie的支持

系统内置了一个cookie函数用于支持和简化Cookie的相关操做,该函数能够完成Cookie的设置、获取、删除操做。web

Cookie设置

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

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

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

数组参数能够采用query形式参数cookie

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

和上面的用法等效。dom

后面的参数支持prefix,expire,path,domain和httponly(**3.2.2版本新增**)五个索引参数,若是没有传入或者传入空值的话,会默认取COOKIE_PREFIXCOOKIE_EXPIRECOOKIE_PATHCOOKIE_DOMAINCOOKIE_HTTPONLY五个配置参数。若是只传入个别参数,那么也会和默认的配置参数合并。函数

支持给cookie设置数组值(采用JSON编码格式保存),例如:编码

cookie('name',array('value1','value2'));

Cookie获取

获取cookie很简单,不管是怎么设置的cookie,只须要使用:spa

$value = cookie('name');

若是没有设置cookie前缀的话 至关于code

$value = $_COOKIE['name'];

若是设置了cookie前缀的话,至关于orm

$value = $_COOKIE['前缀+name'];

若是要获取全部的cookie,能够使用:索引

$value = cookie();

该用法至关于

$value = $_COOKIE;

注意,该用法会返回全部的cookie而不管是否当前的前缀。

Cookie删除

删除某个cookie的值,使用:

cookie('name',null);

要删除全部的Cookie值,能够使用:

cookie(null); // 清空当前设定前缀的全部cookie值cookie(null,'think_'); //  清空指定前缀的全部cookie值
相关文章
相关标签/搜索