作者:手机用户2602916425 | 来源:互联网 | 2013-06-28 14:18
今天给大家说说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)
PHP setCOOKIE()用法
参数
|
说明
|
举例
|
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
|