我有一個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