5

默认情况下,我使用假脱机邮件解决方案在我的网页中发送时事通讯。但我也需要立即发送电子邮件。所以我使用了这个解决方案

如果我使用 Spool 发送时事通讯,一切都很好。但是当我使用

$mailer = $this->get('instant_mailer');

我收到的电子邮件在开头添加了一些文本:

HTTP/1.0 200 OK Cache-Control: no-cache Content-Type: text/html; charset=UTF-8 日期:格林威治标准时间 2012 年 9 月 7 日星期五 16:19:06

如何删除这个?

4

3 回答 3

7

我敢打赌,您正在尝试发送 Response 对象。

new Response();

它转到 __toString ()

public function __toString()
{
    $this->prepare();

    return
        sprintf('HTTP/%s %s %s', $this->version, $this->statusCode, $this->statusText)."\r\n".
        $this->headers."\r\n".
        $this->getContent();
}

这是因为:

$this->render('template.html.twig');

返回 Response 以避免使用:

$response = $this->render('template.html.twig');
$text = $response->getContent();

问候, 马克斯

于 2012-09-09T12:50:31.550 回答
1

利用

$content = $this->renderView('template.html.twig');

代替

$content = $this->render('template.html.twig');

渲染返回响应

于 2014-01-10T09:37:22.413 回答
0

该问题的其他可能解决方案是使用templatingservice 而不是$this->render()

<?php
$body = $this->get('templating')->render('template.html.twig');
于 2013-11-21T17:48:54.350 回答