使用PHP获取/读取Javascript cookie

使用PHP获取/读取Javascript cookie,javascript,php,cookies,Javascript,Php,Cookies,我有一个理论问题 我知道您可以通过使用:document.cookie 在PHP中有类似的方法来实现这一点吗 PHP可以获取/读取由JavaScript创建的cookie吗? 如果是的话,那你怎么做呢?你可以使用超全局。只要像引用任何数组一样引用它,$\u COOKIE['key\u name']就是您想要访问的COOKIE 请参阅。要查看它们,您可以执行以下操作: foreach($_COOKIE as $v){ echo htmlentities($v, 3, 'UTF-8').'<

我有一个理论问题

我知道您可以通过使用:document.cookie

在PHP中有类似的方法来实现这一点吗

PHP可以获取/读取由JavaScript创建的cookie吗? 如果是的话,那你怎么做呢?

你可以使用超全局。只要像引用任何数组一样引用它,
$\u COOKIE['key\u name']
就是您想要访问的COOKIE


请参阅。

要查看它们,您可以执行以下操作:

foreach($_COOKIE as $v){
  echo htmlentities($v, 3, 'UTF-8').'<br />';
}
请随意更改报价样式(3为ENT_报价)和字符集以满足您的需要


注意:您必须在同一个域上设置cookie才能访问它。

我认为这是在一个cookie中设置所有提示并在信息之间使用符号的好方法。然后在通过JavaScript设置cookie之后,在“PHP”中使用此示例

$mystr = print_r($_COOKIE);
$way=explode(";",$mystr);

PHPglue的答案很好,但有几个拼写错误。它也没有告诉你索引是什么,这可能非常有用

foreach($_COOKIE as $key=>$value)
{
  echo "key: ".$key.'<br />';
  echo "value: ".$value.'<br />';
};
foreach($\u COOKIE作为$key=>$value)
{
echo“key:.$key.
; 回显“值:.$value.”
; };

我的问题是,我正在用Javascript设置cookie,名称中有句点。这些被转换为下划线。例如,cookie名称facebookLogin.myapp.com被更改为facebookLogin\u myapp\u com。运行上面的代码后,我能够看到名称与预期不同,并正确地从PHP读取名称。

Javascript可以通过两种方式设置cookie(我知道)
window.cookie
document.cookie
。如果使用
window.cookie
php无法评估cookie,php只能评估
document.cookie
设置的cookie

javascript

document.cookie='name=value'

PHP

打印($\u COOKIE)

您将在其中看到javascript创建的cookie,以及其他由php创建的cookie

echo$_COOKIE['name']

使用javascript评估php cookie 使用相同的
document.cookie
评估使用document.cookie创建的文档(php)cookie和javascript cookie


Javascript只能评估window.cookies创建的COOKIE

所以我只需要使用$\u COOKIE['cookiename']i php代码ad php将获得设置为i JS的COOKIE?在js中设置cookie时,有一点关于使用正确域的更多信息,对于在这里登陆的人,您还可以使用setcookie函数在PHP中设置cookie。真正发生的是,响应将携带一个cookie头;然后浏览器将存储cookie。从现在起,每个请求都将在请求头中中继,PHP和其他服务器端脚本将在其中访问以前存储的内容。
foreach($_COOKIE as $key=>$value)
{
  echo "key: ".$key.'<br />';
  echo "value: ".$value.'<br />';
};