20.6. 附件

使用addAttachment()方法可以将文件附加到邮件中。 Zend_Mail会缺省地认为该文件是二进制对象(application/octet-stream),以 base64编码传输, 并且作为邮件的附件处理。 通过传递额外的参数给addAttachment()方法可以覆盖上述缺省设定:

例 20.6. 带附件的邮件

<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail();
// build message...
$mail->addAttachment($someBinaryString);
$mail->addAttachment($myImage, 'image/gif', Zend_Mime::DISPOSITION_INLINE, Zend_Mime::ENCODING_8BIT);
?>   

如果你想得到对此附件MIME段产生的更多控制,你可以使用addAttachment()方法的返回值来修改它的属性。 方法addAttachment()返回了一个Zend_Mime_Part对象:

<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail();

$at = $mail->addAttachment($myImage);
$at->type        = 'image/gif';
$at->disposition = Zend_Mime::DISPOSITION_INLINE;
$at->encoding    = Zend_Mime::ENCODING_8BIT;
$at->filename    = 'test.gif';

$mail->send();
?>