将变量从布局传递到ZF中的视图

时间:2013-05-09 00:01:26

标签: php zend-framework

我正在尝试将一个变量从主布局传递给视图,但我没有运气。

layout.phtml

$this->hadMessages = true;

myview.phtml

var_dump($this->hadMessages);

var_dump始终以NULL返回。从我所看到的,布局也是一个视图,所以它应该在相同的上下文中,对吧?

我正在使用Zend Framework 1.11。

2 个答案:

答案 0 :(得分:3)

在视图之后呈现布局,这就是为什么这不起作用。根据您尝试的操作,您可以在控制器插件的帮助下实现所需的效果。

答案 1 :(得分:0)

无法将变量从布局传递到视图,因为根据MVC模式,您不应该有这样的任务。更好的布局包含一些消息或不应该在控制器或引导程序级别决定,而不是在布局本身。 这意味着在控制器中,您应该进行所有必需的分配,例如$this->view->layout_messages_shown = true,并在布局和视图中获取此变量值,如echo ( $this->layout_messages_shown ? "messages shown" : "messages hidden" )