12- Les e-mails

Il est possible d’envoyer des mails avec PHP. Il est cependant absolument nécessaire de pouvoir envoyer des emails avec le serveur sur lequel vous avez installé PHP pour pouvoir utiliser la commande mail() de php. Pour une configuration rapide sur Debian, vous pouvez installer et configurer Exim ou Postfix. Envoyer des mails avec PHP est un outil très puissant puisque cela nous permet d’envoyer des milliers de mails avec une simple itération.

La fonction mail est la suivante :

bool mail ( string $to , string $subject , string $message [, mixed $additional_headers [, string $additional_parameters ]] )

Elle renvoie donc un booléen qui indique si le mail a bien été envoyé et prend en paramètres obligatoires le destinataire, le sujet et le message. Il est cependant recommandé d’ajouter les headers en chaîne de caractères.

Depuis PHP 7.2 il est cependant possible d’insérer les headers en tant qu’array.

Exemple d’envoie de mail avec php 7.2 :

$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = array(
   'From' => 'webmaster@example.com',
   'Reply-To' => 'webmaster@example.com',
   'X-Mailer' => 'PHP/' . phpversion()
);

if(!mail($to, $subject, $message, $headers)){
   echo "Erreur lors de l'envoie du mail";
}

Attention, le fait que le mail soit effectivement accepté pour envoi et envoyé ne garantit pas qu’il soit reçu.