我最近发现手动调用$view->render()
时似乎无法使用view helpers。
在这种特殊情况下,我有一个配置视图帮助器,我可以在我的视图脚本中轻松调用,如下所示:
$this->config()->some->param
我现在正在尝试发送邮件,并发现上述手动调用render方法时似乎不起作用:
/**
* Within these view scripts, $this->config() is called,
* which results in an empty object
*/
$mail->setBodyText($this->view->render('partials/invite/email/text.phtml'));
$mail->setBodyHtml($this->view->render('partials/invite/email/html.phtml'));
我忽略了什么吗?这是一个错误还是预期的行为?我应该采用另一种手动渲染视图脚本的方法吗?
提前致谢。
答案 0 :(得分:0)
我们能看到更多代码吗?
到目前为止,我已经使用手动渲染的视图了。
$view->setHelperPath('/path/to/helper/class');
print $view->render('view.phtml');
这是/ path / to / helper / class中名为FooBar.php的类
<?php
class Zend_View_Helper_FooBar extends Zend_View_Helper_Abstract {
public function fooBar()
{
return 'random string this will be the output';
}
}
在view.pthml
中print $this->fooBar();
输出
随机字符串这将是输出