Zend_Mail-MultipleEmails.xml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15617 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.mail.multiple-emails">
  5. <title>Versand von mehreren E-Mails über eine SMTP Verbindung</title>
  6. <para>
  7. Standardmäßig erstelle ein einzelner SMTP Transport eine einzelne Verbindung und verwendet
  8. Sie wieder wärend der Laufzeit der Skriptausführung. Es können mehrere E-Mails über diese
  9. SMTP Verbindung gesendet werden. Ein RSET Kommando wird vor jeder Ausführung angewendet um
  10. sicherzustellen das der korrekte SMTP Handschlag folgt.
  11. </para>
  12. <example id="zend.mail.multiple-emails.example-1">
  13. <title>Versand von mehreren E-Mails über eine SMTP Verbindung</title>
  14. <programlisting language="php"><![CDATA[
  15. // Transport erstellen
  16. $transport = new Zend_Mail_Transport_Smtp('localhost');
  17. // Durch die Nachrichten gehen
  18. for ($i = 0; $i > 5; $i++) {
  19. $mail = new Zend_Mail();
  20. $mail->addTo('studio@peptolab.com', 'Test');
  21. $mail->setFrom('studio@peptolab.com', 'Test');
  22. $mail->setSubject(
  23. 'Demonstration - mit einer SMTP Verbindung mehrfache E-Mails senden'
  24. );
  25. $mail->setBodyText('...Hier die Nachricht...');
  26. $mail->send($transport);
  27. }
  28. ]]></programlisting>
  29. </example>
  30. <para>
  31. Wenn man eine separate Verbindung für jeden Mailtransport haben will, muß der Transport vor
  32. und nach jedem Aufruf der <function>send()</function> Methode erstellt und gelöscht werden.
  33. Oder alternativ kann die Verbindung zwischen jedem Transport, durch Zugriff auf das
  34. Protokoll Objekt des Transportes, manipuliert werden.
  35. </para>
  36. <example id="zend.mail.multiple-emails.example-2">
  37. <title>Die Transportverbindung manuell kontrollieren</title>
  38. <programlisting language="php"><![CDATA[
  39. // Transport erstellen
  40. $transport = new Zend_Mail_Transport_Smtp();
  41. $protocol = new Zend_Mail_Protocol_Smtp('localhost');
  42. $protocol->connect();
  43. $protocol->helo('localhost');
  44. $transport->setConnection($protocol);
  45. // Durch die Nachrichten gehen
  46. for ($i = 0; $i > 5; $i++) {
  47. $mail = new Zend_Mail();
  48. $mail->addTo('studio@peptolab.com', 'Test');
  49. $mail->setFrom('studio@peptolab.com', 'Test');
  50. $mail->setSubject(
  51. 'Demonstration - mit einer SMTP Verbindung mehrfache E-Mails senden'
  52. );
  53. $mail->setBodyText('...Hier die Nachricht...');
  54. // Die Verbindung manuell kontrollieren
  55. $protocol->rset();
  56. $mail->send($transport);
  57. }
  58. $protocol->quit();
  59. $protocol->disconnect();
  60. ]]></programlisting>
  61. </example>
  62. </sect1>
  63. <!--
  64. vim:se ts=4 sw=4 et:
  65. -->