在app_控制器中设置一个变量,并在CakePHP布局中使用它

在app_控制器中设置一个变量,并在CakePHP布局中使用它,cakephp,controller,Cakephp,Controller,我需要在CakePHP的app_控制器中设置一个变量,然后在默认布局文件中使用它 有没有办法设置这个变量?我想他的意思是,他不知道在哪里设置变量,因为他不在控制器中的特定函数中。要使变量(或任何其他变量)在任何地方都可用,您必须将其放入AppController中,如下所示: function beforeFilter() { $this->set('whatever', $whatever); } 更多关于这些回调函数的信息。AppController中的回调函数是$thi

我需要在CakePHP的app_控制器中设置一个变量,然后在默认布局文件中使用它


有没有办法设置这个变量?

我想他的意思是,他不知道在哪里设置变量,因为他不在控制器中的特定函数中。要使变量(或任何其他变量)在任何地方都可用,您必须将其放入AppController中,如下所示:

function beforeFilter()
  {
  $this->set('whatever', $whatever);
  }

更多关于这些回调函数的信息。

AppController中的回调函数是$this->set()变量的位置,您希望这些变量可用于所有视图和布局。在所有控制器操作之前调用beforeFilter()。如果要在操作运行后设置视图变量,请使用beforeRender()。您可以访问$this->viewVars关联数组中的其他视图变量

function beforeRender() {
    $new = "Universal " . $this->viewVars['layoutTitle']; 
    $this->set('universalTitle', $new);
}

您可以使用此设置变量: $this->set(compact('currentJobId')

它将在设置数组值的同时设置数组