Manuel PHP
Précédent |  | Suivant

# LIII. Mail

# Introduction

La fonction mail() permet d'envoyer un mail.

# Pré-requis

Pour que la fonction mail() soit disponible, il faut que PHP ait accès au service sendmail sur le serveur, au moment de la compilation. Si vous utilisez un autre programme de mail, comme qmail ou postfix, assurez-vous d'utiliser les bonnes API. PHP va commencer à chercher sendmail dans votre PATH, puis, dans les dossiers suivants : /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib. Il est hautement recommandé d'avoir sendmail de disponible dans votre PATH. De plus, l'utilisateur qui compile PHP doit avoir le droit d'accéder à l'exécutable sendmail.

# Installation

Il n'y pas d'installation nécessaire pour utiliser ces fonctions, elles font parties du coeur de PHP.

# Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier `php.ini`.

Tableau 1. Options de configuration

Nom | Par défaut | Modifiable
--- | --- | ---
SMTP | "localhost" | PHP_INI_ALL
smtp_port | "25" | PHP_INI_ALL
sendmail_from | NULL | PHP_INI_ALL
sendmail_path | DEFAULT_SENDMAIL_PATH | PHP_INI_SYSTEM

Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Voici un éclaircissement sur l'utilisation des directives de configuration.

smtp string

  Sous Windows seulement : adresse DNS ou adresse IP du SMTP que PHP doit utiliser pour envoyer un mail avec la fonction mail().

smtp_port int

  Sous Windows seulement : numéro de port à utiliser pour se connecter au serveur SMTP lors de l'envoi de mail avec la fonction mail(); par défaut, c'est 25. Uniquement disponible depuis PHP 4.3.0.

sendmail_from string

  Sous Windows seulement : valeur du champ "From:" qui doit être utilisée lors de l'envoi de mail.

sendmail_path string

  Localisation du programme sendmail : habituellement `/usr/sbin/sendmail` ou `/usr/lib/sendmail`. configure essaye de repérer la présence de sendmail par lui-même, et affecte ce résultat par défaut. En cas de problème de localisation, vous pouvez établir une nouvelle valeur par défaut ici.

  Tout système n'utilisant pas sendmail doit établir cette directive à la valeur chemin du programme de substitution qui remplace le serveur de mail, si celui-ci existe, par exemple, Qmail. Dans ce cas-là, vous devez mettre : `/var/qmail/bin/sendmail`.

  qmail-inject ne requiert aucune option pour traiter correctement le mail.

  Cette directive fonctionne également sous Windows. Si elle est définie, smtp, smtp_port et sendmail_from sont ignorés et la commande spécifiée est exécutée.

# Types de ressources

Cette extension ne définit aucune ressource.

# Constantes prédefinies

Cette extension ne définit aucune constante.

Précédent | Sommaire | Suivant
lzf_optimized_for | Niveau supérieur | ezmlm_hash