Zend_Mail-Attachments.xml 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <sect1 id="zend.mail.attachments">
  4. <title>Вложения</title>
  5. <para>
  6. Файлы могут быть прикреплены к сообщению электронной почты с
  7. использованием метода <methodname>addAttachment()</methodname>.
  8. По умолчанию <classname>Zend_Mail</classname> предполагает, что
  9. прикрепляемый файл является бинарным (application/octet-stream),
  10. должен передаваться в кодировке base64 и обрабатываться как вложение.
  11. Эти предположения могут быть переопределены передачей дополнительных
  12. параметров методу <code>addAttachment()</code>.
  13. </para>
  14. <example id="zend.mail.attachments.example-1">
  15. <title>Почтовые сообщения со вложениями</title>
  16. <programlisting language="php"><![CDATA[
  17. $mail = new Zend_Mail();
  18. // Формирование сообщения...
  19. $mail->createAttachment($someBinaryString);
  20. $mail->createAttachment($myImage,
  21. 'image/gif',
  22. Zend_Mime::DISPOSITION_INLINE,
  23. Zend_Mime::ENCODING_8BIT);
  24. ]]></programlisting>
  25. </example>
  26. <para>
  27. Если требуется больший контроль над частями <acronym>MIME</acronym>,
  28. генерируемыми для данного вложения, то можно использовать возвращаемое
  29. методом <methodname>createAttachment()</methodname> значение для
  30. изменения атрибутов. Метод <methodname>createAttachment()</methodname>
  31. возвращает объект <code>Zend_Mime_Part</code>:
  32. </para>
  33. <programlisting language="php"><![CDATA[
  34. $mail = new Zend_Mail();
  35. $at = $mail->createAttachment($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->send();
  41. ]]></programlisting>
  42. <para>
  43. Альтернативным способом является создание экземпляра
  44. <classname>Zend_Mime_Part</classname> и его добавление через
  45. <methodname>addAttachment()</methodname>:
  46. </para>
  47. <programlisting language="php"><![CDATA[
  48. $mail = new Zend_Mail();
  49. $at = new Zend_Mime_Part($myImage);
  50. $at->type = 'image/gif';
  51. $at->disposition = Zend_Mime::DISPOSITION_INLINE;
  52. $at->encoding = Zend_Mime::ENCODING_8BIT;
  53. $at->filename = 'test.gif';
  54. $mail->addAttachment($at);
  55. $mail->send();
  56. ]]></programlisting>
  57. </sect1>
  58. <!--
  59. vim:se ts=4 sw=4 et:
  60. -->