Mail::factory()
Synopsis
object &factory (
string $backend
,
array $params = array()
)
Description
Creates a instance of a backend-specific mailer class.
Parameter
-
string $backend- the name of the backend"mail","smtp","sendmail" -
array $params- a array of backend specific parameters.List of parameter for the backends
-
mail-
If safe mode is disabled,
$paramswill be passed as the fifth argument to the PHP mail() function. If$paramsis an array, its elements will be joined as a space-delimited string.
-
-
sendmail-
$params["sendmail_path"]- The location of the sendmail program on the filesystem. Default is/usr/bin/sendmail. -
$params["sendmail_args"]- Additional parameters to pass to the sendmail. Default is-i.
-
-
smtp-
$params["host"]- The server to connect. Default islocalhost. -
$params["port"]- The port to connect. Default is25. -
$params["auth"]- Whether or not to use SMTP authentication. Default is FALSE. -
$params["username"]- The username to use for SMTP authentication. -
$params["password"]- The password to use for SMTP authentication. -
$params["localhost"]- The value to give when sending EHLO or HELO. Default islocalhost -
$params["timeout"]- The SMTP connection timeout. Default is NULL (no timeout). -
$params["verp"]- Whether to use VERP or not. Default is FALSE. -
$params["debug"]- Whether to enable SMTP debug mode or not. Default is FALSE.Mail internally uses
Net_SMTP::setDebug. -
$params["persist"]- Indicates whether or not the SMTP connection should persist over multiple calls to the send() method. -
$params["pipelining"]- Indicates whether or not the SMTP commands pipelining should be used.
-
-
Return value
object - a specific Mail instance
or a PEAR_Error object on failure.
Throws
| Error code | Error message | Reason | Solution |
|---|---|---|---|
| NULL |
"Unable to find class for driver
xxx"
|
Mailer backend class was not found. |
Check the $backend parameter, if correct
reinstall and/or update your Mail package.
|
Note
This function should be called statically.