Thứ Hai, 9 tháng 7, 2018

PHP - Quản lý email

ảnh minh họa

Chức năng email là tính năng được yêu cầu nhiều nhất trong một khung công tác web. lập trình PHP cung cấp một lớp email thanh lịch đi kèm với một gói. 

Nó được sử dụng để gửi email văn bản thuần tuý đơn giản cũng như email văn bản có định dạng nâng cao với nhiều tệp đính kèm. Nó hỗ trợ các tính năng sau đây - Thư thuần văn bản, thư HTML, tệp đính kèm và tệp đính kèm nội tuyến.

Cấu hình

Để kích hoạt chức năng email trong ứng dụng, chúng ta chỉ cần tải gói email như được chỉ định bên dưới trong tệp cấu hình chính, fuel / app / config / config.php.
'always_load' => array ( 
   'packages' => array ( 
      'email', 
   ), 
),

Một tùy chọn khác là tải gói email, chính bộ điều khiển như sau.

\Package::load('email');

Cài đặt email có thể được thực hiện trong tệp cấu hình chính và một số tùy chọn quan trọng như sau,

trình điều khiển - Trình điều khiển email như smtp

is_html - Cho dù gửi thư dưới dạng nội dung HTML hay không

mức độ ưu tiên - Mức độ ưu tiên của email

smtp.host - Máy chủ lưu trữ SMTP

smtp.port - Cổng máy chủ SMTP

smtp.username - Tên người dùng máy chủ SMTP

smtp.password - Mật khẩu máy chủ SMTP

smtp.timeout - Thời gian chờ SMTP

smtp.starttls - Máy chủ SMTP có cần lệnh STARTTLS hay không

API email

Sau đây là API được cung cấp bởi lớp email và trình điều khiển email.

làm giả

Mục đích: PHP Để tạo một thể hiện của trình điều khiển email. Nó tạo trình điều khiển dựa trên cấu hình hoặc đầu vào mà nó nhận được. Trình điều khiển email cung cấp các tính năng để tạo và gửi thư. Một số trình điều khiển email có thể là smtp, sendmail, mail gun và mandrill .

Tham số - Không có hoặc mảng chi tiết cấu hình

Trả về - Trả về đối tượng Email_Driver

Ví dụ,
$email = \Email::forge();  
$email = \Email::forge (array( 
   'driver' => 'smtp', 
));

thân hình

Mục đích - Để đặt nội dung tin nhắn

Tham số - $ body - nội dung thư

Trả về - Trả về phiên bản hiện tại PHP

Ví dụ,
$email = \Email::forge(); 
$email->body('Body message');  

//or pass it a View 
$email->body(\View::forge('my/view', $data); 

alt_body

Mục đích - Để đặt nội dung tin nhắn thay thế

Tham số - $ alt_body - nội dung thư thay thế

Trả về - Trả về phiên bản hiện tại

Ví dụ,
$email = \Email::forge(); 
$email->alt_body('Body message');  

//or pass it a View 
$email->alt_body(\View::forge('my/view', $data);

sự ưu tiên

Mục đích - Để đặt mức độ ưu tiên của thư

Tham số

$ priority - giá trị của mức ưu tiên. Các tùy chọn là

a. \Email::P_LOWEST 
* \Email::P_LOW 
* \Email::P_NORMAL 
* \Email::P_HIGH 
* \Email::P_HIGHEST

Trả về - Trả về phiên bản hiện tại

Ví dụ

$email = \Email::forge(); 
$email->priority(\Email::P_HIGHEST);

html_body

Mục đích - Để đặt nội dung thư ở định dạng HTML

Tham số

$ html - nội dung thư trong HTML;

generate_alt - có tạo thông điệp thay thế hay không;

auto_attach - có nhúng hình ảnh hay không

Trả về - Trả về phiên bản hiện tại

Ví dụ
$email = \Email::forge();  

// Do generate the alt body, but don't auto attach images. 
$email->html_body(\View::forge('welcome/email', $data), true, false); 

từ

Mục đích - Để đặt địa chỉ từ

Tham số

$ từ - từ địa chỉ email;

$ name - Tên người gửi

Trả về - Trả về phiên bản hiện tại

Ví dụ,
$email = \Email::forge(); 
$email->from('test@test.com', 'My Name');

môn học

Mục đích - Để đặt chủ đề của tin nhắn

Tham số - $ subject - chủ đề của thông điệp email

Trả về - Trả về phiên bản hiện tại

Ví dụ
$email = \Email::forge(); 
$email->subject('Suject of the mail message');

đến

Mục đích - Để đặt địa chỉ email người nhận

Tham số

$ email - địa chỉ email hoặc mảng địa chỉ email;

$ name - tên người nhận

Trả về - Trả về phiên bản hiện tại

Ví dụ
$email = \Email::forge();  
$email->to('test@test.com', 'My Dear Name'); 
$email->to (array( 
   'test@test.com', 
   'test@test.com' => 'My Dear friend', 
)); 

tiêu đề

Mục đích - Để đặt tiêu đề tùy chỉnh thành thông báo email

Tham số

$ header - loại tiêu đề hoặc mảng tiêu đề;

$ value - giá trị của tiêu đề

Trả về - Trả về phiên bản hiện tại

Ví dụ
$email = \Email::forge(); 
$email->header('X-SMTPAP', 'XXXXXXXX'); 
$email>reply_to (array( 
   'X-SMTPAP'  => 'XXXXXX', 
   'X-SMTPAP2' > 'XXXXXA',
));

đính kèm

Mục đích - Để đính kèm một tập tin vào tin nhắn email

Tham số

$ file - đường dẫn tập tin;

$ inline - cho dù đính kèm tệp nội tuyến hay không;

$ cid - số nhận dạng nội dung trong PHP;

$ mime - MIME loại tệp đính kèm;

$ name - ghi đè tên tệp đính kèm

Trả về - Trả về phiên bản hiện tại

Ví dụ
$email = \Email::forge();
$email>attach(DOCROOT.'attachments/sample_attachment.pdf');

gửi

Mục đích - Để gửi thư.

Tham số

$ validate - cho dù để xác thực địa chỉ email

Trả về - đúng hoặc sai

Ví dụ
$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. 
}

Mẫu email hoạt động

Hãy để chúng tôi sử dụng API đã học trong chương trước và tạo một mã đơn giản để gửi tin nhắn. Sau đây là mã đơn giản nhất để gửi tin nhắn.
$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(); 

Không có nhận xét nào:

Đăng nhận xét

lập trình PHP cho các nhà phát triển PERL

Chương này sẽ liệt kê những điểm tương đồng và khác biệt chính giữa PHP và PERL. Điều này sẽ giúp các nhà phát triển PERL hiểu PHP rất nhanh...