Zend_Mail-Attachments.xml 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <sect1 id="zend.mail.attachments">
  2. <title> 附件 </title>
  3. <para>
  4. 使用<code>createAttachment()</code>方法可以将文件附加到邮件中。<code>Zend_Mail</code>会缺省地认为该文件是二进制对象(application/octet-stream),以 base64编码传输, 并且作为邮件的附件处理。通过传递额外的参数给<code>createAttachment()</code>方法可以覆盖上述缺省设定:
  5. </para>
  6. <example id="zend.mail.attachments.example-1">
  7. <title> 带附件的邮件 </title>
  8. <programlisting role="php"><![CDATA[<?php
  9. require_once 'Zend/Mail.php';
  10. $mail = new Zend_Mail();
  11. // build message...
  12. $mail->createAttachment($someBinaryString);
  13. $mail->createAttachment($myImage, 'image/gif', Zend_Mime::DISPOSITION_INLINE, Zend_Mime::ENCODING_8BIT);]]>
  14. </programlisting>
  15. </example>
  16. <para>
  17. 如果你想得到对此附件MIME段产生的更多控制,你可以使用<code>createAttachment()</code>方法的返回值来修改它的属性。方法<code>createAttachment()</code>返回了一个<code>Zend_Mime_Part</code>对象:
  18. </para>
  19. <programlisting role="php"><![CDATA[<?php
  20. require_once 'Zend/Mail.php';
  21. $mail = new Zend_Mail();
  22. $at = $mail->createAttachment($myImage);
  23. $at->type = 'image/gif';
  24. $at->disposition = Zend_Mime::DISPOSITION_INLINE;
  25. $at->encoding = Zend_Mime::ENCODING_8BIT;
  26. $at->filename = 'test.gif';
  27. $mail->send();]]>
  28. </programlisting>
  29. <para>
  30. 创建 <code>Zend_Mime_Part</code> 实例和用 <code>addAttachment()</code> 添加它的替代方案:
  31. </para>
  32. <programlisting role="php"><![CDATA[<?php
  33. require_once 'Zend/Mail.php';
  34. $mail = new Zend_Mail();
  35. $at = new Zend_Mime_Part($myImage);
  36. $at->type = 'image/gif';
  37. $at->disposition = Zend_Mime::DISPOSITION_INLINE;
  38. $at->encoding = Zend_Mime::ENCODING_8BIT;
  39. $at->filename = 'test.gif';
  40. $mail->addAttachment($at);
  41. $mail->send();]]>
  42. </programlisting>
  43. </sect1>
  44. <!--
  45. vim:se ts=4 sw=4 et:
  46. -->