如何在cakephp视图文件中读取cookie值

时间:2010-07-16 11:49:12

标签: cakephp cakephp-1.3

在此我将控制器文件中的cookie值写入。 我想在视图文件中读取cookie值而不是可能。

4 个答案:

答案 0 :(得分:8)

您必须在控制器中阅读它并设置值以使其可用于视图:

$this->set('myValue', $this->Cookie->read('cookieValue'));

然后在视图中,您可以访问变量$ myValue以返回'cookieValue'的值:

<?php echo $myValue; ?>

答案 1 :(得分:2)

在AppController中使用Cookie组件:

$components = array('Cookie');

在AppController的beforeFilter()中定义以下内容:

$this->set('cookieHelper', $this->Cookie);

这样你就可以在视图中使用它了:

$cookieHelper->read('something');

答案 2 :(得分:1)

毕竟CakePHP是一个PHP框架,你可以通过$ _COOKIE读取它们:)

请记住你应该使用:

$this->Cookie->write('myValue', $value, false);

在您的控制器中,因为否则它将被加密并且很难使用:)

答案 3 :(得分:-3)

我使用SessionComponentSessionHelper来执行此操作:

在控制器中:

$this->Session->write('first_visit', true);

在视图中:

if ($session->check('first_visit')) {
    $session->del('first_visit');
    echo $this->element('quick_intro');
}

你也可以使用$ session-&gt; read('value')从会话中读出一个值,而不仅仅是检查它是否存在。