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,
$params
will be passed as the fifth argument to the PHP mail() function. If$params
is 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.