当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

方法 - Email 套件

优质
小牛编辑
135浏览
2023-12-01

forge($setup = null, array $config = array())

forge 回传一个新的 Email_Driver 实例基于配置或它接收到的输入。

静态
参数
参数类型预设描述
$setup混合
null
提供 null 做为预设的配置,一个设定组的名称,或配置的阵列。
$config混合
null
额外配置阵列以动态修改预设配置。
回传一个新的 Email_Driver 实例
範例
// 简单的样本:
$email = \Email::forge();

// 从一个群组载入配置
$email = \Email::forge('my_defaults');

// 提供配置
$email = \Email::forge(array(
	'driver' => 'smtp',
));

// 从群组载入设置以动态覆写
$email = \Email::forge('my_defaults', array(
	'driver' => 'smtp',
));

Email driver 方法

扩充 Email_Driver 的每个驱动程序都有这些方法。 你所需要的就是唤醒与执行它们。

body($body)

body 转换输入为字串,并设定讯息主体。

静态
参数
参数类型预设描述
$body字串必要讯息主体。
回传$this
範例
$email->body('This is my message.');

// 或传递检视给它
$email->body(\View::forge('my/view', $data);

alt_body($alt_body)

alt_body 转换输入为字串,并设定讯息的替代主体。

静态
参数
参数类型预设描述
$alt_body字串必要讯息主体。
回传$this
範例
$email->alt_body('This is my alternative message.');

// 或传递检视给它
$email->alt_body(\View::forge('my/alt/view', $data);

priority($priority)

priority 方法设定邮件的优先权。

静态
参数
参数类型预设描述
$priority字串必要优先权: 查看所有邮件优先权
回传$this
範例
$email->priority(\Email::P_HIGHEST);

html_body($html, $generate_alt = null, $auto_attach = null)

html_body 方法设置邮件主体并且选择性地从其产生替代的主体。如果指定内嵌的图片将自动被附加。

请注意: 预设情况下自动附加是开启的(透过配置)。要关闭这个功能,提供 false 或者更改配置设定。

静态
参数
参数类型预设描述
$html字串必要邮件 HTML。
$generate_alt布林
null
是否产生替代讯息主体,当提供空值时回退(fallback)到预设配置。
$auto_attach布林
null
设定为 true 或 false 以附加嵌入式图片,当提供空值时回退(fallback)到预设配置。
回传$this
範例
$email->html_body(\View::forge('welcome/email', $data));
// 不产生替代讯息主体
$email->html_body(\View::forge('welcome/email', $data), false);

// 产生替代讯息主体,但不自动附加图片。
$email->html_body(\View::forge('welcome/email', $data), true, false);

from($email, $name = false)

from 方法设定来源地址与名称。

静态
参数
参数类型预设描述
$email字串必要来源电子邮件。
$name字串
false
来源名称。
回传$this
範例
$email->from('me@example.com', 'My Name');

subject($subject)

subject 方法设定主题。

静态
参数
参数类型预设描述
$subject字串必要电子邮件主题。
回传$this
範例
$email->subject('This is my subject');

to($email, $name = false)

to 方法增加单一或阵列的地址至 to 接收者阵列。

静态
参数
参数类型预设描述
$email字串|阵列必要接收电子邮件。
$name字串
false
接收名称,当 $email 是阵列时忽略。
回传$this
範例
// 添加单一地址
$email->to('me@example.com', 'My Name');

// 添加多个地址
$email->to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

cc($email, $name = false)

cc 方法添加单一或阵列的地址到 cc 接收者阵列。

静态
参数
参数类型预设描述
$email字串|阵列必要接收电子邮件。
$name字串
false
接收名称,当 $email 是阵列时忽略。
回传$this
範例
// 添加单一地址
$email->cc('me@example.com', 'My Name');

// 添加多个地址
$email->cc(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

bcc($email, $name = false)

bcc 方法添加单一或阵列的地址到 bcc 接收者阵列。

静态
参数
参数类型预设描述
$email字串|阵列必要接收电子邮件。
$name字串
false
接收名称,当 $email 是阵列时忽略。
回传$this
範例
// 添加单一地址
$email->bcc('me@example.com', 'My Name');

// 添加多个地址
$email->bcc(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

reply_to($email, $name = false)

reply_to 方法添加单一或阵列的地址到 reply to 接收者阵列。

静态
参数
参数类型预设描述
$email字串|阵列必要接收电子邮件。
$name字串
false
接收名称,当 $email 是阵列时忽略。
回传$this
範例
// 添加单一地址
$email->reply_to('me@example.com', 'My Name');

// 添加多个地址
$email->reply_to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

header($header, $value = null)

header 方法添加一个自订的标题到你的邮件表头。

静态
参数
参数类型预设描述
$header字串|阵列必要表头的类型或表头的阵列。
$value字串
null
表头的值。
回传$this
範例
// 添加单一地址
$email->header('X-SMTPAP', 'XXXXXXXX');

// 添加多个地址
$email->reply_to(array(
	'X-SMTPAP' => 'XXXXXX',
	'X-SMTPAP2' => 'XXXXXA',
));

clear_recipients()

clear_recipients 方法清空 to、cc 与 bcc 列表。

静态
参数
回传$this
範例
// 添加单一地址
$email->bcc('me@example.com', 'My Name');

// 添加多个地址
$email->to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_recipients();

clear_addresses()

clear_addresses 方法清空 to、cc、bcc 与 reply to 列表。

静态
参数
回传$this
範例
// 添加单一地址
$email->reply_to('me@example.com', 'My Name');

// 添加多个地址
$email->to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_addresses();

clear_to()

clear_to 方法清空 to 接收者列表。

静态
参数
回传$this
範例
// 添加多个地址
$email->to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_to();

clear_cc()

clear_cc 方法清空 cc 接收者列表。

静态
参数
回传$this
範例
// 添加多个地址
$email->cc(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_cc();

clear_bcc()

clear_bcc 方法清空 bcc 接收者列表。

静态
参数
回传$this
範例
// 添加多个地址
$email->bcc(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_bcc();

clear_reply_to()

clear_reply_to 方法清空 reply to 列表。

静态
参数
回传$this
範例
// 添加多个地址
$email->reply_to(array(
	'me@example.com',
	// 带有名称
	'me@example.com' => 'His/Her name.',
));

// 重置
$email->clear_reply_to();

attach($file, $inline = false, $cid = null, $mime = null, $name = null)

attach 方法附加一个档案。

此方法将会在 attach_paths 阵列里设定(config/email.php)的附件路径中搜寻档案。

静态
参数
参数类型预设描述
$file字串
false
引入档案的路径。
$inline布林
false
是否附加内嵌档案。
$cid字串
null
内容标识符。附加内嵌图像时使用。
$mime字串
null
MIME 类型预设是去查在 core/config/mimes 内的阵列,以此来覆写它。
$name字串
null
附件名称覆写。
回传$this
範例
// 添加一个附件
$email->attach(DOCROOT.'attachments/report.pdf');

// 添加一个内嵌图像
$email->attach(DOCROOT.'assets/img/mail/header.png', true, 'cid:headerimage');
// 此图像将被包成 <img src="cid:headerimage" />

string_attach($contents, $filename, $cid = null, $inline = false, $mime = null)

string_attach 方法以字串输入附加一个档案。

静态
参数
参数类型预设描述
$contents字串必要附件内容。
$filename字串必要使用的档案名称。
$cid字串
null
内容标识符。附加内嵌图像时使用。
$inline布林
false
是否将附加档案内嵌。
$mime字串
null
MIME 类型预设是去查在 core/config/mimes 内的阵列,以此来覆写它。
回传$this
範例
// 添加一个附件
$email->string_attach('This is a textfile', 'test.txt');

clear_attachments()

clear_attachments 方法清除附件阵列。

静态
参数
回传$this
範例
// 添加一些附件
$email->string_attach('This is a textfile', 'test.txt');
$email->attach(DOCROOT.'uploads/attach.pdf');

// 然后清空附件
$email->clear_attachments();

send($validate = null)

send 方法发送信件。

静态
参数
参数类型预设描述
$validate布林
null
是否验证地址,退回到配置设定。
回传布林
範例
try{
	$email->send();
}
catch(\EmailSendingFailedException $e)
{
	// 驱动程序无法发送信件。
}
catch(\EmailValidationFailedException $e)
{
	// 单一或更多验证失败的email地址。
}

get_invalid_addresses()

get_invalid_addresses 方法回传未通过验证的email地址。

静态
参数
回传$this
範例
try{
	$email->send();
}
catch(\EmailSendingFailedException $e)
{
	// 驱动程序无法发送信件。
}
catch(\EmailValidationFailedException $e)
{
	// 单一或更多验证失败的email地址。
	$these_failed = $email->get_invalid_addresses();
}

return_path($email)

return_path 方法设定回传路径地址。

静态
参数
参数类型预设描述
$email字串必要邮件回传路径。
回传$this
範例
$email->return_path('bounces@example.com');

pipelining($pipelining = true)

pipelining 方法可使用流水线(一次发送多个讯息)。 对于不支援的驱动,这个方法是一个空操作(NOOP)。流水线预设是停用的。

静态
参数
参数类型预设描述
$pipelining布林
true
流水线是否应该被启用。
回传$this
範例
$email->pipelining(true);

Email getters

get_from()

get_from 方法回传配置的 "from" 地址。

静态
参数
回传字串
範例
// 回传透过 from() 设定的地址
$from = $email->get_from();

get_to()

get_to 方法回传配置的 "to" 地址。

静态
参数
回传阵列
範例
// 回传透过 to() 设定的地址
$to = $email->get_to();

get_cc()

get_cc 方法回传配置的 "cc" 地址。

静态
参数
回传阵列
範例
// 回传透过 cc() 设定的地址
$cc = $email->get_cc();

get_bcc()

get_bcc 方法回传配置的 "bcc" 地址。

静态
参数
回传阵列
範例
// 回传透过 bcc() 设定的地址
$bcc = $email->get_bcc();

get_reply_to()

get_reply_to 方法回传配置的 "reply_to" 地址。

静态
参数
回传字串
範例
// 回传透过 reply_to() 设定的地址
$reply_to = $email->get_reply_to();

get_body()

get_body 方法回传设定的 Email 主体。

静态
参数
回传字串
範例
// 回传 Email 主体
$text = $email->get_body();

get_subject()

get_subject 方法回传配置的 Email "subject"。

静态
参数
回传字串
範例
// 回传透过 subject() 设定的主题
$subject = $email->get_subject();