在代码点火器站点的 cookie 中设置一个数组


Set an array in cookie in codeigniter site

我正在开发一个代码点火器网站。这是我的控制器功能:

public function hoteldetails($id)
{
    $this->load->helper('cookie');
    $hotel_details_view = array();

    $hotel_details_view = get_cookie('hotel_details_view');
    array_push($hotel_details_view, $id);
    $this->input->set_cookie($hotel_details_view);
    print_r($hotel_details_view);
    $this->load->view('hotel_details',$data);
}

现在我想在函数调用时在 cookie 中设置多个$id

我收到错误:

遇到 PHP 错误

严重性:警告

消息:array_push() 期望参数 1 是数组,给定布尔值

文件名:控制器/酒店.php

行号:191

我需要帮助:)

更新:试试这个:

public function hoteldetails($id)
{
    $this->load->helper('cookie');
    $hotel_details_view = array();
    $cookieValue = get_cookie('hotel_details_view');     
    $hotel_details_view[] = $cookieValue;
    $hotel_details_view[] = $id;
    $this->input->set_cookie($hotel_details_view);
    print_r($hotel_details_view);
    $this->load->view('hotel_details',$data);
}

$hotel_details_view数组被您从 get_cookie() 获取的$hotel_details_view字符串值覆盖。

<?php 
public function hoteldetails($id)
{
    $this->load->helper('cookie');
    $hotel_details_view = array();  
    $hotel_details_view = get_cookie('hotel_details_view');
    $hotel_details_view[] = $id;
    $this->input->set_cookie($hotel_details_view);
    print_r($hotel_details_view);
    $this->load->view('hotel_details',$data);
}
?>