object &factory (
string $backend
,
array $params = array()
)
Crée une instance de la classe spécifique au back-end d'envoi de mail choisi.
string $backend - nom du back-end "mail" ,"smtp" , "sendmail"
array $params - un tableau de paramètres spécifiques au back-end choisi.
Liste des paramètres pour le back-ends.
Si le safe-mode est désactivé, $params sera passé en tant que cinquième argument à la fonction mail() de PHP. Si $params est un tableau, ses éléments seront linéarisés en utilisant un espace en tant que délimiteur.
sendmail
$params["sendmail_path"] - L'emplacement du programme sendmail dans le système de fichier. Par defaut c'est /usr/bin/sendmail .
$params["sendmail_args"] - Paramètres supplémentaires à transmettre au programme sendmail. Par défaut, -i .
smtp
$params["host"] - Serveur auquel se connecter. Par défaut : localhost .
$params["port"] - Port de connexion. Par défaut : 25 .
$params["auth"] - Faut-il ou pas utiliser l'authentification SMTP. Par défaut : FALSE.
$params["username"] - Le nom d'utilisateur à communiquer pour l'authentification SMTP.
$params["password"] - Le mot de passe à communiquer pour l'authentification SMTP.
$params["persist"] - Indique si la connection SMTP doit rester ouverte pour plusieurs appels de la méthode send().
$params["localhost"] - La valeur à donner lors de l'envoi de EHLO ou HELO. Par défaut vaut localhost .
$params["timeout"] - Le délai maximal de connexion SMTP. Par défaut vaut NULL (aucun délai maximal).
$params["verp"] - Si l'on doit utiliser ou non VERP Par défaut vaut FALSE.
$params["debug"] - Si l'on doit utiliser le mode de débogage SMTP ou non. Par défaut vaut FALSE.
$params["persist"] - Indique si la connexion SMTP doit être persistente ou non lors de multiples appels à la méthode send().
object - une instance de la classe Mail spécifique ou un objet de classe PEAR_Error, en cas d'echec.
Code d'erreur | Message d'erreur | Cause | Solution |
---|---|---|---|
NULL | " Unable to find class for driver xxx " | La classe du back-end d'envoi de mail n'a pas été trouvée. | Vérifiez les paramètres de $backend . Si tout est correct, réinstallez ou mettez à jour le module mail. |
This function should be called statically.