php和javascript cookie

php和javascript cookie,php,javascript,Php,Javascript,为什么php只有在我刷新页面两次时才能获得cookie新值。 当第一次运行页面时,php不会得到cookie值 谢谢 <script type="text/javascript"> var name = 'test1'; var value = '1234'; var expirydays = '1'; expiry = new Date(); expiry.setDate(expiry.getDate() + expirydays); document.cookie = name

为什么php只有在我刷新页面两次时才能获得cookie新值。 当第一次运行页面时,php不会得到cookie值

谢谢

<script type="text/javascript"> 
var name = 'test1';
var value = '1234';
var expirydays = '1';
expiry = new Date();
expiry.setDate(expiry.getDate() + expirydays);
document.cookie = name+"="+escape(value)+";expires="+expiry.toGMTString();
</script>

<?php       
print_r($_COOKIE);
?> 

变量名称='test1';
var值='1234';
var expirydays='1';
到期日=新日期();
expiry.setDate(expiry.getDate()+expirydays);
document.cookie=name+“=”+escape(value)+“expires=“+expire.togmString()”;

您混淆了PHP和JavaScript的工作原理

PHP首先在服务器端运行

JavaScript在PHP运行后很长一段时间在用户浏览器的客户端上运行

在JavaScript中设置的cookie对于生成JavaScript的PHP脚本来说永远都不可见:太晚了。您必须重新加载页面


但是顺便说一句,即使是通过PHP自己的
setcookie()
设置的值也只有在重新加载页面后才可见,因为
$\u COOKIE
变量是在脚本启动时填充的。

PHP在服务器上运行,JavaScript在客户端上运行。PHP代码在JavaScript代码运行之前运行,因此第一次,PHP还没有cookie。它第二次起作用,因为cookie已经在那里了