CakePHP 3.7-从控制器访问视图变量

时间:2019-01-11 13:42:05

标签: variables cakephp view cakephp-3.0

AppController->beforeRender()内部,我将检查是否已设置视图变量并查看其值。

如何在CakePHP 3.7中从控制器访问视图变量?

以前$this->viewVars['variable_name']可以使用此功能,但已弃用。

我尝试了$this->viewBuilder()->getVars(),但是返回的是一个空数组,当然还有视图变量。

1 个答案:

答案 0 :(得分:0)

从评论中总结一个答案:这不可能直接实现。
通过viewBuilder()访问变量将不起作用,因为它仅在构建视图时才接收viewvar。

封装要访问的变量的自定义元素可能是解决方案。

最后,我将一些变量设置为默认值:在AppController->initialize()中,将视图变量status设置为"OK",然后其他控制器和方法可以简单地覆盖它。