状态 草稿
Todo Comments and corrections
官方最后更新时间 2008/08/16 14:13

Cookie 辅助函数

提供用于 COOKIE 数据的方法。

  1. domain(域名范围):cookie 可以写入的一个有效域名,默认是”“(使用于 localhost)。对于域名范围的多个 cookie 需要在域名前面加入 .example.com
  2. path(路径):cookie 可以写入的一个有效路径,默认为根目录 '/'。
  3. expire(期限):cookie 的生命期限,直到在浏览器过期,和在设置第二个 cookie 之前,都还一直存在。cookie 开始于当被设置时,注意:设置从 0 秒开始。当你关闭浏览器后这个cookie就消失了。
  4. secure(安全):如果标注为安全,它与 WEB 服务器之间只能通过 HTTPS 协议传递数据。默认为 FALSE
  5. httponly: 该cookie(的值)只能通过HTTP(服务端)访问, 而不能让客户端脚本(js等)访问. 默认为FALSE. 注意:(使用这个功能)至少需要PHP版本为5.2.0
  1. httponly: The cookie can be accessed via HTTP only, and not via client scripts. Default is FALSE. Note: Requires at least PHP version 5.2.0

配置

cookies 的默认设置在 application/config/cookie.php 文件中。你可以对此辅助函数的这些参数进行修改。

方法

set()

cookie::set() 接受多个参数,cookie 的名称($name)和值($value)是必须的。你可以用连续的值传递参数到方法当中:

cookie::set($name, $value, $expire, $path, $domain, $secure, $httponly);

或者你可以使用关联数组的方式来指定:

$cookie_params = array(
               'name'   => 'Very_Important_Cookie',
               'value'  => 'Choclate Flavoured Mint Delight',
               'expire' => '86500',
               'domain' => '.example.com',
               'path'   => '/'
               );
cookie::set($cookie_params);

get()

cookie::get() 接受多个参数,cookie 的名字(name)是必须的

$cookie_value = cookie::get($cookie_name, $default_value = NULL, $xss_clean = FALSE);

设置第三个参数为 true ,将过滤掉 Cookie 不安全的数据。

如果 Cookie 的条目不存在时返回 $default_value

delete()

cookie::delete() 接受多个参数,cookie 的名字(name)是必须的, 使用方法同 cookie::set()是因为事实上删除cookie也是给cookie设置值(不过是给cookie设置空值和过期时间)。 cookie::delete() 接受多个参数,cookie 的名字(name)是必须的, 使用方法同 cookie::set()。 but sets the cookie value to effectively deleting it.

cookie::delete('stale_cookie');
helpers/cookie.txt · 最后更改: 2008/11/07 07:16 由 lazyboy