未显示 Cookie 值



这是我的代码:

    <?php 
    $friendid = 10;
    $friendname = "enco";
    $max=count($_COOKIE['rooms']); 
    $i = $max + 1;
    setcookie("rooms[$i]['type']", "1on1", time() + 3600, "/", ".mywebsite.com");
    setcookie("rooms[$i]['name']", $friendname, time() + 3600, "/", ".mywebsite.com");
?>

下面的代码在另一个页面中:

<?php
    $max=count($_COOKIE['rooms']); 
$k = 0;
for($k = 0; $k<$max; $k++) {
    echo "Cookie 1 show: " . $_COOKIE['rooms'][$k]['type'] . "<br /><br />";
    echo "Cookie 2 show: " . $_COOKIE['rooms'][$k]['name'] . "<br /><br />"; 
    }
    ?>

但它不起作用。当我尝试像上面示例中那样回显 cookie 时,什么也没出现。

我的问题是:这些结构是否正确:

setcookie("rooms[$i]['type']", "1on1", time() + 3600, "/", ".mywebsite.com");
setcookie("rooms[$i]['name']", $friendname, time() + 3600, "/", ".mywebsite.com");

为了在另一个页面(而不是在编写 cookie 的同一页面中)显示这些内容:

echo "Cookie 1 show: " . $_COOKIE['rooms'][$i]['type'] . "<br /><br />";
echo "Cookie 2 show: " . $_COOKIE['rooms'][$i]['name'] . "<br /><br />";

谢谢

PHP

的超全局变量_GET、_POST、_REQUEST_COOKIE都是在脚本启动时创建的,然后在脚本执行期间永远不会被 PHP 修改。

因此,您使用 setcookie() 创建的 cookie 在下次运行此代码之前将无法在_COOKIE中使用。

最新更新