访问控制器在ZF布局中的操作变量

时间:2013-10-30 10:58:17

标签: php zend-framework

我想在zend框架中访问布局中的变量,我该怎么做呢。我经常搜索,但找不到任何对我有用或有帮助的东西。以下是我已经尝试过的链接,请管理员请不要将此问题标记为重复...

谢谢..

Zend Framework 2 - Layout and variable

access controller action variables to zf2 layout

塞纳里奥

我想在条件库中显示layout.phtml中的链接。像我的网站的一些用户无法看到该链接,但其他人可以做到。这个条件来自我拥有的数据库,但我不知道如何在layout.phtml

中访问它

示例

<?php if($this->check == true) {?><a href="#">This Link</a><?php } ?>

如果$this->check == true,则显示链接,否则不显示。

2 个答案:

答案 0 :(得分:0)

将操作中的变量传递给视图,如

$this->view->check = true;

然后在$this->check之类的视图中访问它并进行检查

if($this->check){
  //Do something
}
else{
  //Do something
}

答案 1 :(得分:0)

我得到了问题的解决方案

IndexController's 初始化函数

中编写以下代码
$this->_helper->layout()->myvar = $someValue;

并通过此代码在布局中访问它

$this->placeholder('Zend_Layout')->myvar;

对于他/她在他/她的应用程序中的每个控制器,必须这样做。否则将收到有关未定义变量的错误。

<强>参考:

http://framework.zend.com/manual/1.12/en/zend.layout.quickstart.html

第一个代码清单第15行......