Hoofdstuk 17. Zend_Mail

Inhoudsopgave

17.1. Inleiding
17.2. E-mail sturen via SMTP
17.3. Meerdere e-mails sturen via een SMTP verbinding
17.4. Verschillende Transporten gebruiken
17.5. HTML E-Mail
17.6. Bijlagen
17.7. Geadresseerde bijvoegen
17.8. De MIME Boundary controleren
17.9. Bijkomende Headers
17.10. Character Sets
17.11. Encoding
17.12. SMTP Authentificatie
17.13. Securing SMTP Transport
17.14. Reading Mail Messages
17.14.1. Simple example using Pop3
17.14.2. Opening a local storage
17.14.3. Opening a remote storage
17.14.4. Fetching messages and simple methods
17.14.5. Working with messages
17.14.6. Using folders
17.14.7. Advanced Use

17.1. Inleiding

Zend_Mail verstrekt globale functionaliteit om zowel tekst als MIME-compliant multipart e-mails te sturen. Mail kan gestuurd worden met Zend_Mail via de ingebouwde PHP functie mail() of via een directe SMTP verbinding.

Voorbeeld 17.1. Eenvoudige E-mail met Zend_Mail

Een eenvoudige e-mail bestaat uit enkele geadresseerden, een onderwerp, een inhoud en een afzender. Om zo'n mail te sturen met de PHP mail() functie doe je het volgende:

<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail();
$mail->setBodyText('Dit is de inhoud van de mail.');
$mail->setFrom('somebody@example.com', 'Een afzender');
$mail->addTo('somebody_else@example.com', 'Een geadresseerde');
$mail->setSubject('TestOnderwerp');
$mail->send();
?>   
[Opmerking] Opmerking

Om een mail te sturen met Zend_Mail moet je op zijn minst één geadresseerde, een afzender (bijvoorbeeld met setFrom()) en een inhoud (tekst of HTML) ingeven.

Voor de meeste mail attributen zijn er "get" methodes om de informatie die in het mail object is opgeslaan te lezen. Voor meer detail kan je terecht bij de API documentatie. Een speciale methode is getRecipients(). Deze methode stuurt een array terug van alle geadresseerden die werden toegevoegd voor de roep aan de methode.

Om veiligheidsredenen filtert Zend_Mail alle headervelden om header injectie te voorkomen met behulp van newline (\n) tekens.