麻烦设置数组作为cookie的值

时间:2016-02-25 07:46:57

标签: php arrays cookies

我需要将数组设置为cookie的值,在这里我找到了合理的解决方案:Arrays in cookies PHP。所以这就是我的尝试:

<?php        
   $array=array();
   foreach($columnList as $c_list) {
       foreach($c_list as $one_member) {
           echo '<button class="btn btn-default" type="button"><b>' . $one_member . '</b></button>';
           array_push($array,$one_member);
       }
   }
   setcookie('new_column',serialize($array), time() + (10 * 365 * 24 * 60 * 60));
?>

请注意,我循环遍历二维数组并将每个单值推送到名为$array的数组中。但是当我这样做时:

print_r($_COOKIE['new_column']);

它仅显示第一个值,即第一个$one_member。当我这样做时:

$data=unserialize($_COOKIE['new_column']);
print_r($data);

它基本上什么也没显示。我做错了什么?

更新: 我找到了这个问题的前期问题,这里是:我试着把这个问题拿出来:

foreach($c_list as $one_member) {
    echo '<button class="btn btn-default" type="button"><b>' . $one_member . '</b></button>';
    $array=array();
    $array[]=$one_member;
 }

没有array_push,这只会返回$one_member。所以我首先需要解决这个问题,以便将足够的数组放入cookie中,但我甚至不知道为什么会这样。

0 个答案:

没有答案