PHP 设置与删除cookie

来源:互联网 发布:javascript教学视频 编辑:程序博客网 时间:2024/04/30 14:43

1.设置cookie


PHP设置Cookie的最常用方法是setcookie函数,setcookie函数有7个可选


参数,目前最常用的是前5个。


name(Cookie名):可以通过$_COOKIR['name']进行访问


value(Cookie的值)


expire(过期时间)Unix时间戳格式,默认为0,表示浏览器关闭即失效


path(有效路径)如果路径设置为'/',则整个网站都有效


domain(有效域)默认整个域名都有效


例1:


$value="test";


setcookie("TestCookie",$value);

setcookie("TestCookie",$value,time()+3600);//有效期是一小时

setcookie("TestCookie",$value,time()+3600,"/path","imooc.com");//设置路径与域



PHP中还有一个设置Cookie的函数setrawcookie,setrawcookie跟setcookie基本


一样,,唯一不同的就是value值不会自动的进行urlencode,因此在需要的时候要


手动的进行urlencode。


setrawcookie('cookie_name',rawurlencode($value),time()+60*60*24*365);


因为Cookie是通过HTTP标头进行设置的,所以也可以直接使用header方法进行设置。


header("Set-cookie:cookie_name=value");



2.删除cookie


PHP中删除cookie也是采用setcookie函数来实现的。


setcookie("test"," ",time()-1);


在上述代码中,将cookie的过期时间设置到当前时间之前,则该cooki会自动


失效,也就达到了删除cookie的目的。之所以这么设计是因为cookie是通过


HTTP的标头来传递的,客户端根据服务端返回的Set-Cookie段来进行cookie的


设置如果删除cookie需要使用新的Del-cookie来实现,则HTTP头就会变得复杂,


实际上仅通过Set-Cookie就可以简单明了的实现Cookie的设置、更新与删除。


了解远离之后,我们也可以直接通过header来删除cookie。


header("Set-Cookie:test=1234455665;expires=".gmdate('D,d M Y H:i:s \G\M\T',time()-1));


gmdate()用来生成格林威治标准时间,以便删除时差影响。


来源:慕课网(https://www.imooc.com/learn/26

原创粉丝点击