Manuel PHP
Précédent |  | Suivant

# LXXVII. 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 | Historique
--- | --- | --- | ---
SMTP | "localhost" | PHP_INI_ALL |
smtp_port | "25" | PHP_INI_ALL | Disponible depuis PHP 4.3.0.
sendmail_from | NULL | PHP_INI_ALL |
sendmail_path | NULL | PHP_INI_SYSTEM |

Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à Annexe G.

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

`smtp` string

  Sous Windows seulement : nom de l'hôte 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. Cette directive définira également l'en-tête "Return-Path:".

`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é-définies

Cette extension ne définit aucune constante.

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