- Messages
- 585
- Points
- 10
- Language
- Tiếng Việt
Tôi đã giới thiệu với các bạn nhiều thư viện gửi mail trong PHP như thư viện PHPMailer tại bài viết "Gửi mail bằng thư viện PHPMailer" hay thư viện Symfony Mailer tại bài viết "Xây dựng chức năng gửi mail chuyên nghiệp cho website với thư viện Symfony Mailer". Bài viết này tôi tiếp tục giới thiệu với các bạn thư viện PHP khác dùng để gửi mail, đó là thư viện Stampie.
Về cơ bản, thư viện Stampie sử dụng tương tự như PHPMailer hay Symfony Mailer nên nếu các bạn đã sử dụng qua các thư viện gửi mail trong PHP rồi thì việc sử dụng Stampie cũng đơn giản. Trước tiên, các bạn cần cài đặt thư viện Stampie bằng công cụ Composer với dòng lệnh:
Thư viện Stampie yêu cầu thêm ba thư viện bổ sung khác đó là Curl client, Guzzle and PSR-7 và HTTP Message. Các bạn cài đặt cả ba thư viện này với dòng lệnh Composer sau:
Thư viện Stampie có cung cấp một lớp trừu tượng Stampie\Message, các bạn cần phải tạo một lớp Message mở rộng lớp trừu tượng này như sau:
Bây giờ, các bạn có thể gửi mail bằng thư viện Stampie như ví dụ sau:
Trên đây là hướng dẫn sử dụng thư viện Stampie đơn giản, các bạn có thể tìm hiểu thêm tại địa chỉ https://github.com/Stampie/Stampie.
Về cơ bản, thư viện Stampie sử dụng tương tự như PHPMailer hay Symfony Mailer nên nếu các bạn đã sử dụng qua các thư viện gửi mail trong PHP rồi thì việc sử dụng Stampie cũng đơn giản. Trước tiên, các bạn cần cài đặt thư viện Stampie bằng công cụ Composer với dòng lệnh:
Code:
composer require stampie/stampie
Code:
composer require php-http/curl-client guzzlehttp/psr7 php-http/message
PHP:
//Khai báo sử dụng thư viện
use Stampie\Message as StampieMessage;
//Khai báo lớp Message
class Message extends StampieMessage
{
public function getFrom()
{
return 'from@example.com';
}
public function getSubject()
{
return 'Mail subject';
}
public function getText()
{
return 'Mail content';
}
}
PHP:
//Khai báo sử dụng thư viện
use Http\Adapter\Guzzle6\Client;
use Stampie\Mailer\SendGrid;
//Khởi tạo đối tượng send grid
$sendGrid = new SendGrid(
new Client(),
'username:password'
);
//Gửi mail
$sendGrid->send(new Message('to@example.com'));