欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于COOKIE的问题

程序员文章站 2022-04-14 16:25:27
...
有没有办法在一个页面内,设置COOKIE,然后获取到该COOKIE

而不是第二次访问页面才拿到COOKIE


回复讨论(解决方案)

下个页面加载才可访问,不行的吧。

直接赋值不就行了?
setcookie('name', $val);
$_COOKIE['name'] = $val;


但有什么意义呢?

直接赋值不就行了?
setcookie('name', $val);
$_COOKIE['name'] = $val;
但有什么意义呢?

请问,例如INDEX.PHP,是不是一定要等它脚本执行完毕了,这个COOKIE才会存起来。
如果其中异步请求一个TEST.PHP,而且不等这个文件的返回结果,INDEX.PHP继续执行完毕。
这个TEST.PHP能否拿到COOKIE

基本概念
$_COOKIE 中的值是浏览器发送过来的
setcookie 设置的 cookie 是通过 http 协议头发送给浏览器的

只要浏览器收到了完整的 http 协议头,那么其中的 cookie 就开始生效了
如果 INDEX.PHP 中异步请求一个TEST.PHP, 这个 test.php 是能够获得该 cookie 的
如果异步的test.php请求属于同一浏览器的线程(选项卡)那也能够获得该 cookie
如果异步的test.php请求属于不同的浏览器的进程(在系统中又打开一个浏览器)那就必须等待index.php结束也能够获得该 cookie,当然还和失效期有关

同意楼上的解释

相关标签: 关于COOKIE的问题