gpt4 book ai didi

email - ZF2 : Using Zend\View to render emails

转载 作者:行者123 更新时间:2023-12-01 10:51:00 25 4
gpt4 key购买 nike

在 ZF1 中,我使用 View 组件来呈现电子邮件模板,如下所示:

$html = new Zend_View();
$html->setScriptPath($path);
$html->assign($vars);
$body = $html->render($template);

// prepare the mail
$mail = new Zend_Mail('utf-8');
$mail->setBodyHtml($body);

我如何在 ZF2 中解决这个问题?我想我需要创建一个新的 ViewModel,分配我的变量并设置模板,但是从哪里开始呢?

请注意,我没有在 Controller 中执行此操作。我看过这个问题,ZF2 view rendering ,在 MVC 响应中返回 html,但我希望呈现一个模板并将结果存储在一个变量中(然后我将其分配给电子邮件正文)。我会在服务层中执行此操作。

与 MVC 进程相关的 View 实例与我用来呈现电子邮件正文的实例无关。

最佳答案

您需要 ServiceManager 来执行此操作。在你的 Controller 中试试这个:

$view = new ViewModel(array(
'foo'=>'bar',
));
$view->setTemplate('path/to/phtml');
$view->setTerminal(true);
$serviceManager = $this->getServiceLocator();
$emailBody = $serviceManager->get('ViewRenderer')->render($view);

关于email - ZF2 : Using Zend\View to render emails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20440727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com