LXV. Mail
La fonction mail() permet d'envoyer un mail.
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.
Il n'y pas d'installation nécessaire pour
utiliser ces fonctions, elles font parties du coeur de PHP. 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 H.
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.
Cette extension ne définit aucune ressource. Cette extension ne définit aucune constante. - Table des matières
- ezmlm_hash -- Calcule le hachage demandé par EZMLM
- mail -- Envoi un mail
|