2014-01-30 3 views
0

Я использую Swiftmailer в своем веб-приложении Symfony2.Как обрабатывать специальные символы в теме письма?

// Subject and body dynamically come from database 
$subject = "This is my subject with an apostroph ' in it."; 
$bodytext = "Test text, also with an ' apostrophe in it."; 

$message = \Swift_Message::newInstance() 
      ->setSubject($subject) 
      ->setFrom('[email protected]') 
      ->setTo('[email protected]'); 

$message->setBody($bodytext); 

$this->get('mailer')->send($message); 

Теперь, когда имеется специальный символ, например. апостроф (') в моей теме, электронная почта имеет странную сюжетную линию в моем почтовом клиенте:

Это моя тема с apostroph ' в нем

Забавная вещь: Текст тела отображается правильно, только неверно отформатирован предмет.

Теперь, как я могу обрабатывать специальные символы, подобные этому, и даже лучше, есть ли функция, которую я могу вызвать, прежде чем передать тему, которая обрабатывает специальные символы вообще?

+1

вы пробовали \»? – AtanuCSE

+0

К сожалению, я должен был упомянуть, что тексты не статичны, а динамичны. Я изменю это в своем вопросе. Но хороший совет, хотя ;-) –

ответ

1

Попробуйте убежать объект с помощью функции htmlentities PHP:

$subject = htmlentities("This is my subject with an apostroph ' in it."); 
+0

Будет ли это обрабатывать другие специальные символы, которые могут быть ошибочно проанализированы? –

+1

Лучшее использование [htmlentities] (http://www.php.net/manual/ru/function.htmlentities.php) для этой цели –

Смежные вопросы