2012-09-07 30 views
5

theo mặc định Tôi sử dụng giải pháp gửi thư ống để gửi bản tin trong trang web của mình. Nhưng tôi cũng cần gửi email ngay lập tức. Vì vậy, tôi đã sử dụng this solutionDịch vụ gửi thư bổ sung để sử dụng ống và gửi email tức thì trong Symfony2 - tiêu đề lạ

Nếu tôi gửi bản tin với Spool, mọi thứ đều ổn. Nhưng khi tôi sử dụng

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

tôi nhận được email với một số bổ sung văn bản tại phần đầu:

HTTP/1.0 200 OK Cache-Control: no-cache Content-Type: text/html; charset = UTF-8 Ngày: Thứ Sáu, 07 Tháng 9 2012 16:19:06 GMT

Làm thế nào để loại bỏ điều này?

Trả lời

7

Tôi đặt cược rằng bạn đang cố gửi đối tượng Phản hồi.

new Response(); 

nó đi để __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(); 
} 

Đó là vì:

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

lợi nhuận đáp ứng để tránh việc sử dụng:

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

Kính trọng, Max

+0

Nếu bạn W ο đặt cược vào nó lỗi milion, bạn sẽ là một milioner. Cảm ơn bạn :) – Tom

+0

Bạn được chào đón :) –

+0

Tối đa, được thực hiện tốt. Nó hoạt động tuyệt vời! – medina

0

giải pháp posible khác cho vấn đề là sử dụng templating dịch vụ thay vì $this->render():

<?php 
$body = $this->get('templating')->render('template.html.twig'); 
1

Sử dụng

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

thay vì

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

làm cho lợi nhuận một phản ứng

Các vấn đề liên quan