我正在尝试使用email
向内嵌图片和附件发送Zend Framework 1
。
$mail = new Zend_Mail();
$mail->setType(Zend_Mime::MULTIPART_MIXED);
$mail->setSubject('Message');
$mail->setFrom('user@example1.com', 'Example user #1');
$mail->addTo('user@example2.com', 'Example user #2');
尝试按this example制作nested email
。
message
mainMultipart (content for message, subType="related")
->htmlAndTextBodyPart (bodyPart1 for mainMultipart)
->htmlAndTextMultipart (content for htmlAndTextBodyPart)
->htmlBodyPart (bodyPart1 for htmlAndTextMultipart)
->html (content for htmlBodyPart)
->textBodyPart (bodyPart2 for the htmlAndTextMultipart)
->text (content for textBodyPart)
->fileBodyPart1 (bodyPart2 for the mainMultipart)
->FileDataHandler (content for fileBodyPart1)
小例子:
$html = '<p>Hello</p>';
$bodyHtmlPart = new Zend_Mime_Part($html);
$bodyHtmlPart->type = Zend_Mime::TYPE_HTML;
$bodyMsg = new Zend_Mime_Message();
$bodyMsg->addPart($bodyHtmlPart);
// And other nesting.. ending with Zend_Mime_Message
问题:
如何将Zend_Mime_Message
设置为Zend_Mail
正文?下面添加了几个Zend_Mail
函数,并没有真正帮助。
$mail->setBodyHtml( ? );
$mail->setBodyText( ? );
我尝试查看Zend_Mail_Message
函数,但看起来很相似它仅适用于ZF2
。
答案 0 :(得分:2)
怎么样?
$mailObject->setParts($mimeMessageObject->getParts());
答案 1 :(得分:0)
对于内嵌图像,这里有一个人为它写的类: http://davidnussio.wordpress.com/2008/09/21/inline-images-into-html-email-with-zend-framework/
如果你想作为附件发送,那么从文档中简单明了:
$mail = new Zend_Mail();
$at = $mail->createAttachment($myImage);
$at->type = 'image/gif';
$at->disposition = Zend_Mime::DISPOSITION_INLINE;
$at->encoding = Zend_Mime::ENCODING_BASE64;
$at->filename = 'test.gif';
$mail->send();
请注意,Zend的示例和链接中的该类都具有以下用于处置的设置。
Zend_Mime::DISPOSITION_INLINE;
Zend Docs:http://framework.zend.com/manual/1.12/en/zend.mail.attachments.html
希望有所帮助。