Zend_Mail-Attachments.xml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- EN-Revision: 12754 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.mail.attachments">
  5. <title>Fichiers joints</title>
  6. <para>Des fichiers peuvent-être attachés à un émail en utilisant la méthode <code>createAttachment()</code>. Le
  7. comportement par défaut de <classname>Zend_Mail</classname> est de définir que le fichier joint est un objet binaire
  8. (application/octet-stream), qui devra être transféré avec un encodage de type base64, et est définit comme une pièce
  9. jointe. Ce comportement peut être redéfinit en passant plus de paramètres à <code>createAttachment()</code> :</para>
  10. <example id="zend.mail.attachments.example-1">
  11. <title>Émail avec fichiers joints</title>
  12. <programlisting role="php"><![CDATA[
  13. $mail = new Zend_Mail();
  14. // construction du message
  15. $mail->createAttachment($uneChaineBinaire);
  16. $mail->createAttachment($monImage,
  17. 'image/gif',
  18. Zend_Mime::DISPOSITION_INLINE,
  19. Zend_Mime::ENCODING_8BIT);
  20. ]]></programlisting>
  21. </example>
  22. <para>Si vous voulez contrôler la partie MIME générée pour un fichier joint, vous pouvez utiliser la valeur
  23. retournée de <code>createAttachment()</code> pour modifier ses attributs. La méthodes
  24. <code>createAttachment()</code> retourne un objet de type <classname>Zend_Mime_Part</classname> : <programlisting
  25. role="php"><![CDATA[
  26. $mail = new Zend_Mail();
  27. $at = $mail->createAttachment($monImage);
  28. $at->type = 'image/gif';
  29. $at->disposition = Zend_Mime::DISPOSITION_INLINE;
  30. $at->encoding = Zend_Mime::ENCODING_8BIT;
  31. $at->filename = 'test.gif';
  32. $mail->send();
  33. ]]></programlisting></para>
  34. <para>Une façon alternative est de créer une instance de <classname>Zend_Mime_Part</classname> et de l'ajouter avec la méthode
  35. <code>addAttachment()</code> :</para>
  36. <programlisting role="php"><![CDATA[
  37. $mail = new Zend_Mail();
  38. $at = new Zend_Mime_Part($monImage);
  39. $at->type = 'image/gif';
  40. $at->disposition = Zend_Mime::DISPOSITION_INLINE;
  41. $at->encoding = Zend_Mime::ENCODING_8BIT;
  42. $at->filename = 'test.gif';
  43. $mail->addAttachment($at);
  44. $mail->send();
  45. ]]></programlisting>
  46. </sect1>