如何在CodeIgniter中检索cookie值?

时间:2011-06-20 10:44:52

标签: php codeigniter cookies setcookie

我可以通过print_r($this->session->userdata);在codeigniter中打印会话值 如何在codeigniter中打印cookie?我刚刚设置了一个cookie:

$cookie = array(
          'name'   => 'test_cookie',
          'value'  => 'test',
          'domain' => '/',
          'secure' => TRUE
          );

$this->input->set_cookie($cookie); 

如何打印上述cookie?

7 个答案:

答案 0 :(得分:17)

查看文档:{​​{3}}

它表示您应该使用$this->input->cookie()来检索Cookie:

$this->input->cookie('test_cookie', TRUE);

答案 1 :(得分:5)

这对我在localhost上工作,安全性可能需要收紧服务器

$this->load->helper('cookie');     
$cookie = array(
                    'name'   => 'data',
                    'value'  => '23',
                    'expire' =>  86500,
                    'secure' => false
                );
                $this->input->set_cookie($cookie); 
                var_dump($this->input->cookie('data', false));  

Expire需要是数字,删除路径并将secure设置为false

答案 2 :(得分:3)

如果您正在使用谷歌浏览器使用检查元素来查看cookie是否已设置...我认为您可以在FF中执行此操作,但我有一段时间没有使用过FF ...我只有一个问题使用cookies,那是我设置域名到我的实时域名...所以我有我的cookie代码:

        $this->load->helper('cookie');

         $cookie = array(
           'name'   => 'the_cookie',
           'value'  => 'test value here',
           'expire' => '15000000',
           'prefix' => ''
        );
        $this->input->set_cookie($cookie);

在这里,您可以看到它出现在Google Chrome“Inspect Element Tool”

Google chrome displaying the_cookie value

答案 3 :(得分:1)

'secure' => TRUE

这不允许我获取cookie。

只需设置

'secure' => FALSE 

并且看到它可能有用。

答案 4 :(得分:1)

设置NSFetchedResultsController *frc = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:NULL cacheName:nil]; 将不允许在本地打印cookie值,它只授予对安全连接的访问​​权限,因此除非您设置security => TRUE,否则它不会在localhost中打印任何内容 与使用codeigniter CI_Input 类相比,您可以获得cookie的值

security => FALSE

答案 5 :(得分:0)

使用以下命令加载Cookie助手:

$this->load->helper('cookie');

然后用:

取回你的烹饪
$cookieData = get_cookie("cookie_name");

注意,这些是使用输入类的别名,您也可以像这样检索和设置cookie:

$cookieData = $this->input->get_cookie("cookie_name");

来源 http://ellislab.com/codeigniter/user-guide/helpers/cookie_helper.html

答案 6 :(得分:0)

如果下面提到的代码没有提供任何输出,那么修改 application / config / config.php 文件并将其设置为:

$config['global_xss_filtering'] = TRUE;

$this->input->cookie('cookie_name', TRUE);

否则只需使用它就会显示值

$this->input->cookie('cookie_name');