En-têtes additionnels

Zend_Mail fournit différentes méthodes pour ajouter des en-têtes supplémentaires :

  • setReplyTo($email, $name = null): spécifie l'adresse de réponse (soit l'en-tête : «ReplyTo:»).

  • setDate($date = null): spécifie la date (soit l'en-tête «Date:»). Par défaut, cette méthode utilise l'epoch actuelle. Néanmoins, vous pouvez définir un paramètre de type epoch, une chaîne de caractères représentant une date, ou une instance de Zend_Date.

  • setMessageId($id = true): spécifie l'identifiant du message (soit l'en-tête «Message-Id»). Par défaut, cette méthode génère automatiquement un identifiant par le biais de la méthode createMessageId(). Vous pouvez également définir votre propre identifiant comme paramètre.

En-tête de l'adresse de retour

Si vous souhaitez définir l'adresse de retour (soit l'en-tête «Return-Path:») dans votre courriel, veuillez vous reporter à Configurer le transport sendmail. Malheureusement, cette méthode setReturnPath($email) ne fonctionne pas à cet effet.

Des en-têtes arbitraires peuvent être définis en utilisant la méthode addHeader(). Elle a besoin de deux paramètres contenant le nom, et la valeur du champ d'en-tête. Un troisième paramètre optionnel détermine si l'en-tête doit avoir une ou plusieurs valeurs :

Exemple 576. Ajouter des en-têtes au courriel

$mail = new Zend_Mail();
$mail->addHeader('X-MailGenerator', 'MaSuperApplication');
$mail->addHeader('X-greetingsTo', 'Maman', true); // plusieurs valeurs
$mail->addHeader('X-greetingsTo', 'Papa', true);