previousIntroduction (Previous) (Next) Mail::send()next

View this page in Last updated: Sun, 18 Oct 2009
English | Brazilian Portuguese | Chinese | Dutch | French | German | Hungarian | Japanese | Polish | Russian | Spanish | Turkish

Mail::factory()

Mail::factory() – Crée une instance du mailer

Synopsis

require_once 'Mail.php';

object &factory ( string $backend , array $params = array() )

Description

Crée une instance de la classe spécifique au back-end d'envoi de mail choisi.

Parameter

  • 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.

    • mail

      • 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().

Return value

object - une instance de la classe Mail spécifique ou un objet de classe PEAR_Error, en cas d'echec.

Throws

Possible PEAR_Error values
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.

Note

This function should be called statically.

previousIntroduction (Previous) (Next) Mail::send()next

Download Documentation Last updated: Sun, 18 Oct 2009
Do you think that something on this page is wrong? Please file a bug report or add a note.
User Notes:
Note by: Joe
There is hard-coded -f option in Mail_sendmail->send so it is impossible to set it using $params['sendmail_args']. It is hard-coded to -f$from.

In my case it caused 'X-Authentication-Warning' in mail headers.
Note by: shaun@shaunfreeman.co.uk
When sending mail via smtp be careful with the $params["auth"] option, the docs say it set it either to true or false, but in my case this didn't work and only when I set it to the actual authentication method of the server it worked. In my case I had to set it to:

$params["auth"] = "PLAIN";

This little problem had me going around in circles for 2 weeks!