PHP COOKIE
COOKIE的基本操作
新增一个COOKIE
语法:
setcookie(name,value,expire,path,domain,secure);
setcookie(string 名字,string 值,int 超期时间,string 路径,string 域名,bool 安全连接);注释:setcookie() 函数必须位于 <html> 标签之前。
name 必需。规定 cookie 的名称。
value 可选。规定 cookie 的值。
expire 可选。规定 cookie 的过期时间。time()+3600*24*30 将设置 cookie 的过期时间为 30 天。如果这个参数没有设置,那么 cookie 将在 session 结束后(即浏览器关闭时)自动失效。
path 可选。规定 cookie 的服务器路径。如果路径设置为 “/”,那么 cookie 将在整个域名内有效.如果路径设置为 “/test/”,那么 cookie 将在 test 目录下及其所有子目录下有效。默认的路径值是 cookie 所处的当前目录。
domain 可选。规定 cookie 的域名。为了让 cookie 在 example.com 的所有子域名中有效,您需要把 cookie 的域名设置为 “.example.com”。当您把 cookie 的域名设置为 www.example.com 时,cookie 仅在 www 子域名中有效。
secure 可选。规定是否需要在安全的 HTTPS 连接来传输 cookie。如果 cookie 需要在安全的 HTTPS 连接下传输,则设置为 TRUE。默认是 FALSE。对于这个函数,我们一般这么用: setcookie(cookie名,cookie值,cookie有效期),三个参数就够了。
示例:setcookie('username','aaaa',time()+10);
修改COOKIE
setcookie('cookie名','新的值');
获取COOKIE
语法:$_COOKIE['cookie名'];
删除 COOKIE
setcookie('cookie名','',1); 或者 setcookie('cookie名','',time()-1); COOKIE有生命周期,setcookie的第三个参数是COOKIE的生命周期, 以时间戳形式表示,要删除COOKIE只需要将时间设置为已经过去的时间就行了。
COOKIE注意事项
- COOKIE的值必须是字符串
- 如果要保持数组,可以将COOKIE名称写成数组元素形式。
<?php
setcookie("cookie[three]","cookiethree");
setcookie("cookie[two]","cookietwo");
setcookie("cookie[one]","cookieone");
if (isset($_COOKIE["cookie"]))
{
foreach ($_COOKIE["cookie"] as $name => $value)
{
echo "$name : $value <br />";
}
}
?>