SwiftMailer - 将PHP元素添加到消息正文中

时间:2014-03-23 15:53:36

标签: php swiftmailer

我正试图用这个[巨大的连接]

制作邮件正文
$body='<table  border=1>'.'<tr>'.'<th>Description</th>'.'<th>Quantity</th>'.'<th>Cost</th>'.'</tr>';
for($x=0;$x<=$length-1;$x++)
    {
    $body .='<tr>'.'<td>'.$json2[$x]["description"].'</td>'.'<td>'.$json2[$x]["qty"].'</td>'.'<td>'.$json2[$x]["cost"].'</td>'.'</tr>';
    }

$body.='</table>';

使用Swift Mailer发送它

$message = Swift_Message::newInstance('Thanks for your Order')
->setFrom(array('abc@gmail.com' => 'Sender')) 
->setTo(array('xzy@gmail.com' => 'Receiver Name')) 
->setBody($body,'html');

邮件收到成功,但我没看到表。

对于Feroz

 $mailer = Swift_Mailer::newInstance($transport);
 $message = Swift_Message::newInstance('DialSwap - Thanks for your Order')
 ->setFrom(array('rorrykeys2@gmail.com' => 'DialSwap')) 
 ->setTo(array('rorrykeys@gmail.com' => 'Receiver Name')) 
 ->setBody($body,'text/html');
 $headers = $message->getHeaders();
 $headers->addTextHeader('Content-Type', 'text/html');

2 个答案:

答案 0 :(得分:2)

html不是有效的Content-Type

->setBody($body,'html');

您可能想要text/html

您可以在Creating Messages章节中找到一些使用示例。

答案 1 :(得分:1)

您可以添加如下所示的标题

$message = Swift_Message::newInstance();

$headers = $message->getHeaders();

$headers->addTextHeader('Content-Type', 'text/html');