php setcookie()函数详解
今天给大家说说setcookie的用法,并详细说说是cookie过期问题,先实例后讲解
setcookie实例:
PHP代码
- setcookie("TestCookie", 9streets,time()+3600, "/", ".9streets.cn", 1);
设置cookie当天有效
PHP代码
- //设置默认时区
- $timezone = "Asia/Shanghai"; //date_default_timezone_set()作用
- if (PHP_VERSION >= '5.1' && !emptyempty($timezone))
- {
- date_default_timezone_set($timezone);
- }
- //得到明天0点时的unix时间戳
- $nonce_time = strtotime(date('Ymd')+1);
- //相减得到过期所剩的时间
- $expire_time = $nonce_time - time();
- //echo $expire_time;
- setcookie('test', '有效时间是当天', $expire_time);
语法
setcookie(name,value,expire,path,domain,secure)
| 参数 | 说明 | 举例 |
| name | 必需 Cookie 的名字 | 使用 $_COOKIE['cookiename'] 调用名为 cookiename 的 cookie |
| value | 必需 Cookie 的值 | 此值保存在客户端,不要用来保存敏感数据。 假定 name 是 'cookiename',可以通过 $_COOKIE['cookiename'] 取得其值 |
| expire | 可选 Cookie 过期的时间 | 这是个 Unix 时间戳,即从 Unix 纪元开始的秒数。换而言之,通常用 time() 函数再加上秒数来设定 cookie 的失效期。或者用 mktime()来实现。 time()+60*60*24*30 将设定 cookie 30 天后失效。如果未设定,cookie 将会在会话结束后(一般是浏览器关闭)失效 |
| path | 可选 Cookie 在服务器端的有效路径 | 如果该参数设为 '/' 的话,cookie 就在整个 domain 内有效,如果设为 '/foo/',cookie 就只在 domain 下的 /foo/ 目录及其子目录内有效,例如 /foo/bar/。默认值为设定 cookie 的当前目录 |
| domain | 可选 该 cookie 有效的域名 | 要使 cookie 能在如 example.com 域名下的所有子域都有效的话,该参数应该设为 '.example.com'。虽然 . 并不必须的,但加上它会兼容更多的浏览器。如果该参数设为 www.example.com 的话,就只在 www 子域内有效。细节见 Cookie 规范中的 tail matching |
| secure | 可选 指明 cookie 是否仅通过安全的 HTTPS 连接传送。当设成 TRUE 时,cookie 仅在安全的连接中被设置。默认值为 FALSE | 0 或 1 |
本文链接地址:
发布者:9streets于 2010-09-27 发表
| 我要评论(0) | 阅读次数(2535)





