Hoofdstuk 15. Zend_Mail

Inhoudsopgave

15.1. Inleiding
15.2. E-mail sturen via SMTP
15.3. Meerdere e-mails sturen via een SMTP verbinding
15.4. Verschillende Transporten gebruiken
15.5. HTML E-Mail
15.6. Bijlagen
15.7. Geadresseerde bijvoegen
15.8. De MIME Boundary controleren
15.9. Bijkomende Headers
15.10. Character Sets
15.11. Encoding
15.12. SMTP Authentificatie

15.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 15.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.