我有一个Zend Framework的问题。我创建了一个从数据库请求一些数据的插件。如何将数据从一个插件传递给Zend Framework中的部分?
<?php
class Blog_Plugin_Navigation extends Zend_Controller_Plugin_Abstract {
public function routeShutdown(Zend_Controller_Request_Abstract $request) {
$navigation = new Application_Model_NavigationMapper();
$view = Zend_Layout::getMvcInstance()->getView();
$view->navigation = $navigation->fetchAll();
}
}
在我layout.phtml我用这个:
<ul>
<?=$this->partialLoop('navigation-item.phtml', $this->navigation)?>
</ul>
当我使用的print_r打印出来的阵列我从数据库中获取的值,但如果我访问我的网站,我只是没有得到值。导航item.phtml看起来是这样的:
<li><a href="<?=$this->url?>"><?=$this->text?></a></li>
我刚刚得到这个:
<li><a href=""></a></li>
哪里是我的错?如果有人能帮助我,那会非常好。 :) 提前致谢。
更换
您能得到什么对于'var_dump($ navigation-> fetchAll())',那么你在部分模板中为var_dump($ this-> url,$ this-> text)得到了什么? – drew010 2012-04-24 20:46:18
对于'var_dump($ navigation-> fetchAll())'我得到一个数组,其中包含我想要显示的值以及'var_dump($ this-> url,$ this-> text)'我得到NULL值。 :/ – anisie 2012-04-24 21:01:40
好吧,我想知道你是否也在'layout.phtml'脚本中为'$ this-> navigation'获取了'NULL'?我会认为这个变量是在那里分配的,所以也许它会以partialLoop的方式丢失。你的值是在'$ navigation'数组对象还是数组中?如果您尝试使用<?= $ this ['url']?>'和'<?= = this this ['text']?>'? – drew010 2012-04-24 21:18:34