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

php header 之 Set-Cookie

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

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

分享到:

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

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

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

分享给朋友:

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

用php gettext库来开发多语言系统

用php gettext库来开发多语言系统

通常人们写程序时都是将文字写死在程序里的, 比如:echo "Hello World!";  ,假如要改成它国语言,写国际化程序,就要逐个打开进行修改,程序较短时还行,若程序有上万甚至更多,改起来就不是那么容易了。近来随着i18n的逐渐标 准化,我也来讲一讲在PHP中如...

php利用百度地图API进行IP定位和GPS定位

最 近在做一个手机端的webapp地图应用,而核心内容当然是定位了,但是定位的话有几种方式,IP定位,GPS定位,基站定位(这个貌似webapp用不 了), 那么剩下核心的gps定位和ip定位了,我们知道,html5有定位API,但是该API拿到的GPS数据是硬件坐标,无法直接显示在地图上。...

ThinkPHP实现多数据库连接的解决方法

这篇文章主要介绍了ThinkPHP实现多数据库连接的解决方法,需要的朋友可以参考下ThinkPHP实现连接多个数据的时候,如果数据库在同一个服务器里的话只需要这样定义模型:?123class MembersModel extends Model{protected $trueTableName =...

'gulp'不是内部或者外部命令,也不是可运行的程序或批处理文件

'gulp'不是内部或者外部命令,也不是可运行的程序或批处理文件

相信不少菜鸟初用nodejs时候装插件会碰到这种情况,搜索相关文章和请求很多端友未果,而且很多人也不清楚具体该怎么做,经过长时间询问才解决,最后总结一下,希望可以帮助到此问题端友,我这个是安装gulp的时候出现的问题,其它插件这种问题我不清楚怎么解决,你可以效仿此做法尝试解决一下nodejs安装、查...

textarea 中的换行符号

textarea 中的换行符号

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

 完整的thinphp+phpexcel实现excel报表的输出

完整的thinphp+phpexcel实现excel报表的输出

准备工作:1.下载phpexcel1.7.6类包;2.解压至TP框架的ThinkPHP\Vendor目录下,改类包文件夹名为PHPExcel176,目录结构如下图;       编写代码(以一个订单汇总数据为例):  1. 创建数...

发表评论

访客

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