当前位置:首页 > 技术文档 > 正文内容

php header 之 Set-Cookie

admin9年前 (2017-07-09)技术文档1727

php设置cookie可以使用setcookie函数或header函数。使用header方式时候需要注意字符串的顺序,如果顺序不对,可能会出现意想不到的问题。正确的顺序为

name=value; [expires=date; [path=path]; [domain=domainname]; [secure]]

例如:在netingcn.com下设置一个名为cookiename,值为cookieValue,过期时间为一年的cookie

header("Set-Cookie: cookiename=cookieValue; expires=" . gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT", time() + (86400 * 365)) .  '; path=/; domain=netingcn.com');

如果把domain、path放到expires前面,在firefox通过httpfox查看时,发现过期时间是“End Of Session”,但退出浏览器后重新打开,发现该cookie还是存在的,chrome显示的也是类似。虽说浏览器最终还是设置了一个一年过期的cookie,不过domain信息为当前页面的完整域,不是设置的顶级域。所以一定要注意顺序。

另外,如果用header的方式设置多个cookie,需要设置header的第二个参数为FALSE,下面是header函数的声明:

void header ( string string [, bool replace [, int http_response_code]] )

第二个参数replace 指明是替换掉前一条类似的标头还是增加一条相同类型的标头。默认为替换,但如果将其设为 FALSE 则可以强制发送多个同类标头。

浏览器请求的效果如下:

image.png


cookie保存:

image.png

分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:http://yuyunhe.cn/index.php/post/239.html

分享给朋友:

“php header 之 Set-Cookie” 的相关文章

php简单分页类

<?php class page{            public $page; //当前页     publi...

dz中“QQ互联”出现Discuz! Database Error解决办法

dz中“QQ互联”出现Discuz! Database Error解决办法

dz中QQ登陆出现Discuz! Database Error解决办法dz站长朋友相信肯定有人遇到做的QQ互联登录,根本没法用,这让网站的社交登录性能大打折扣,这么解决?下面就看大神的神操作!...

phpcms v9更换模板的具体操作方法

phpcms v9更换模板的具体操作方法

这篇文章主要介绍了phpcms v9更换模板的具体操作方法,需要的朋友可以参考下分享一下Phpcms V9更换模板的具体操作方法先分享下大概的步骤:1、上传模版文件到服务器;2、在站点管理 里边【模板风格配置】选择新模板;3、设置不同模型对应模板;4、修改现有的栏目,匹配新模板;5、更新栏目缓存、系...

js 实现页面打印功能

     要实现页面打印功能。这个需求往往听起来挺复杂,挺高级的,其实没那么难,下面本文分享一种超简单的方法实现页面的打印功能, 不仅可以打印整个页面,还可以打印页面某块区域。下面是具体的实例代码:    &nb...

Nginx下配置网站ssl实现https访问

在今年的早些时候百度搜索已经全面实现https模式,并宣称已经可以抓取https网页了,相比谷歌早年就已经支持https的抓取,百度虽然晚 了一点,但是毕竟现在还是有了,也有人探讨关于https模式对百度谷歌seo的影响,虽然还没有人给出实际测试的数据,但是百度全站https模式的话 或多或少也...

textarea 中的换行符号

textarea 中的换行符号

在网页中初始化textarea文本时,控制文本的换行需要使用特殊的符号来实现,经过查阅各种资料后终于找到了实现textarea文本换行的符号:&#13;&#10; 例如:<textarea>第一行&#13;&#10;第二行</textare...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。