5

デフォルトでは、Webページでニュースレターを送信するためにスプールメールソリューションを使用しています。しかし、私もすぐにメールを送信する必要があります。だから私はこのソリューションを使用しました

スプールでニュースレターを送信すれば、すべて問題ありません。しかし、私が使用するとき

$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 GMT

これを削除する方法は?

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

この問題に対する他の考えられる解決策は、次のtemplating代わりにサービスを使用することです$this->render()

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