关于cookie的设置问题
面试题中,有时候出现下面一段代码,问你第一次运行时(从未执行过)会出现什么情况?为什么会这样?这题是想考察你对cookie的相关知识
<?php setcookie('user','fei',time()+3600); echo $_COOKIE['user'];
运行结果:
会出现提示你未定义$_COOKIE这个全局变量中,不存在user这一项
原因分析:
第一次运行时,服务端会将cookie发送客户端,所以第一次客户端相当于一个设置cookie的过程
第二次运行时,客户端有cookie了,会将cookie选项放到请求首部中发给服务端,出现正常情况
注意点:
在chrome浏览器确实会按照分析的这种情况运行,但是在firefox下,会设置cookie到浏览器上,但是在请求首部中一直找不到cookie选项
firefox下,第二次运行截图:

总结:
这题本身是没有难度的,只是我在不同的浏览器上运行时,出现了意外,所以总结下

浙公网安备 33010602011771号