有 两个Http头部和Cookie有关:Set-Cookie和Cookie。
Set-Cookie由服务器发送,它包含在响应请求的头部中。它用于在客户端创建一个Cookie。
Cookie头由客户端发送,包含在HTTP请求的头部中。注意,只有cookie的domain和path与请求的URL匹配才会发送这个cookie。
1.设置cookie
setcookie() https://secure.php.net/manual/zh/function.setcookie.php
setrawcookie() 与上一个不同是不会对url进行编码
2.读取cookie
var_dump($_COOKIE["name"]); //读取名为name的cookie的值
3.更新和删除cookie
用setcookie更新时,要确保除了value外其他参数完全一致,否则会新建一个cookie
删除时名为name的cookie时,只需把time参数改写,示例如下
setcookie("name","hello world",time()+3600,'/');
setcookie("name","hello world",time()-1,'/'); //此时就删除了上一句定义的cookie
4.通过header函数操作cookie
header ( string $string [, bool $replace = true [, int $http_response_code ]] ) 下面用到的只是第一个参数$string
格式 header("Set-Cookie:name=value;[expires=date;][path=path;][secure;][httponly;]");
//Set-Cookie:name=value;[expires=date;][path=path;][secure;][httponly;]这一串都只是string的内容,是一个字符串。
例如
header("Set-Cookie: testcookie=中文;path=/; domain=.sunphp.org; expires=".gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT",time()+9600););
//expires那个书写格式 因为整个是字符串外接函数的话必须那样写 比如 "abcde=".function();
也可以写成
header("Set-Cookie: testcookie=中文; expires=".gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT",time()+9600).";path=/; domain=.sunphp.org;");
5.cookie保存数组形式的数据