FuelPHP 電子郵件管理
fuelphp 電子郵件管理
電子郵件功能是 web 框架中最受歡迎的功能。 fuelphp 提供了一個(gè)優(yōu)雅的電子郵件類,捆綁為一個(gè)包。它用于發(fā)送簡單的純文本電子郵件以及帶有多個(gè)附件的高級富文本電子郵件。它支持以下功能-純文本郵件、html 郵件、附件和內(nèi)嵌附件。
配置
要在應(yīng)用程序中啟用電子郵件功能,我們只需在主配置文件 fuel/app/config/config.php 中加載如下指定的電子郵件包。
'always_load' => array ( 'packages' => array ( 'email', ), ),
另一個(gè)選項(xiàng)是加載電子郵件包,控制器本身如下。
\package::load('email');
郵箱設(shè)置可以在主配置文件中完成,一些重要的選項(xiàng)如下,
- driver-電子郵件驅(qū)動程序,例如 smtp
- is_html-是否為 s是否將郵件作為 html 內(nèi)容結(jié)束
- priority-電子郵件的優(yōu)先級
- smtp.host-smtp 服務(wù)器主機(jī)
- smtp.port-smtp 服務(wù)器端口
- smtp.username-smtp 服務(wù)器用戶名
- smtp.password-smtp 服務(wù)器密碼
- smtp.timeout-smtp 超時(shí)
- smtp.starttls-smtp 服務(wù)器是否需要 starttls 命令
電子郵件 api
以下是電子郵件和電子郵件驅(qū)動程序類提供的 api。
forge
目的:創(chuàng)建電子郵件驅(qū)動程序的實(shí)例。它根據(jù)收到的配置或輸入創(chuàng)建驅(qū)動程序。電子郵件驅(qū)動程序提供創(chuàng)建和發(fā)送郵件的功能。一些可能的電子郵件驅(qū)動程序是 smtp、sendmail、mailgun、 和 mandrill。
- 參數(shù)-無或配置詳細(xì)信息數(shù)組
- 返回-返回 email_driver 對象
例如
$email = \email::forge(); $email = \email::forge (array( 'driver' => 'smtp', ));
body
- 目的-設(shè)置消息正文
- 參數(shù)-$body-消息正文
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->body('body message'); //or pass it a view $email->body(\view::forge('my/view', $data);
alt_body
- 目的-設(shè)置替代消息正文
- 參數(shù)-$alt_body-替代消息正文
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->alt_body('body message'); //or pass it a view $email->alt_body(\view::forge('my/view', $data);
priority
- 目的-設(shè)置郵件的優(yōu)先級
- 參數(shù)-
- $priority-優(yōu)先級的值。選項(xiàng)是-
a. \email::p_lowest * \email::p_low * \email::p_normal * \email::p_high * \email::p_highest
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->priority(\email::p_highest);
html_body
- 目的-以 html 格式設(shè)置郵件正文
- 參數(shù)-
- $html-html 中的消息正文;
- generate_alt-是否生成替代消息;
- auto_attach-是否嵌入圖像
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); // do generate the alt body, but don't auto attach images. $email->html_body(\view::forge('welcome/email', $data), true, false);
from
- 目的-設(shè)置發(fā)件人地址
- 參數(shù)-
- $from-來自電子郵件地址;
- $name-發(fā)件人姓名
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->from('test@test.com', 'my name');
subject
- 目的-設(shè)置消息的主題
- 參數(shù)-$subject-電子郵件的主題
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->subject('suject of the mail message');
to
- 目的-設(shè)置接收者的電子郵件地址
- 參數(shù)-
- $email-電子郵件地址或電子郵件地址數(shù)組;
- $name-接收者姓名
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->to('test@test.com', 'my dear name'); $email->to (array( 'test@test.com', 'test@test.com' => 'my dear friend', ));
header
- 目的-為電子郵件設(shè)置自定義標(biāo)題
- 參數(shù)-
- $header-標(biāo)題類型或標(biāo)題數(shù)組;
- $value-標(biāo)題的值
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email->header('x-smtpap', 'xxxxxxxx'); $email>reply_to (array( 'x-smtpap' => 'xxxxxx', 'x-smtpap2' > 'xxxxxa', ));
attach
- 目的-將文件附加到電子郵件中
- 參數(shù)- $file-文件路徑;
- $inline-是否內(nèi)聯(lián)附加文件;
- $cid-內(nèi)容標(biāo)識符;
- $mime-附件的 mime 類型;
- $name-附件文件名覆蓋
- 返回-返回當(dāng)前實(shí)例
例如
$email = \email::forge(); $email>attach(docroot.'attachments/sample_attachment.pdf');
send
- 目的-發(fā)送郵件。
- 參數(shù)-
- $validate-是否驗(yàn)證電子郵件地址
- 返回-真或假
例如
$email = \email::forge(); try{ $email->send(); } catch(\emailsendingfailedexception $e) { // the driver could not send the mail. } catch(\emailvalidationfailedexception $e) { // one or more email addresses failed validation. }
工作電子郵件示例
讓我們使用上一章學(xué)到的api,創(chuàng)建一個(gè)簡單的代碼來發(fā)送消息。以下是發(fā)送消息的最簡單代碼。
$email = email::forge(); $email->from('someone@gmail.com', 'person1'); $email->to('anotherone@gmail.com', 'person2'); $email->subject('add something'); $email->body('contents of mail'); $email->send();
相關(guān)文章
- CodeIgniter 基本概念
- CodeIgniter 使用數(shù)據(jù)庫
- CodeIgniter 國際化
- CakePHP 更新記錄
- CakePHP 刪除記錄
- CakePHP 表單處理
- CakePHP 會話管理
- CakePHP 安全
- CakePHP 日期和時(shí)間
- CakePHP 文件上傳
- FuelPHP 應(yīng)用程序
- FuelPHP 請求和響應(yīng)
- FuelPHP 工作示例
- Laravel 命名空間
- Laravel 響應(yīng)
- Laravel 錯(cuò)誤和日志
- Laravel Artisan控制臺
- Laravel 加密
- Laravel 哈希
- Laravel 歷史版本記錄