Tệp gửi thư PHP

Học cách gửi email sẽ đưa mã PHP của bạn lên một tầm cao mới. Bạn sẽ có thể viết trình nền cảnh báo, nhận email khi ai đó cố gắng đăng nhập, v.v.

 

Hướng dẫn này bao gồm tất cả những gì bạn cần biết. các bước cài đặt, chức năng của lớp, cách sử dụng xác thực SMTP [bao gồm cả Gmail], cách xử lý lỗi, v.v. Bạn cũng sẽ tìm thấy nhiều ví dụ về mã

[Bạn có thể muốn thêm trang này vào Dấu trang của mình để quay lại đây để tham khảo. ]

 

Mục lục

 

 

 

Thiết kế bởi Freepik

 

 

TẠI SAO SỬ DỤNG PHPMAILER?

 

PHPMailer cung cấp nhiều chức năng so với hàm mail[] của PHP, bao gồm mã hóa và xác thực SMTP SSL, tin nhắn HTML, tệp đính kèm và hơn thế nữa

Trên hết, PHPMailer dễ sử dụng hơn nhiều so với mail[] và cung cấp cú pháp hướng đối tượng rõ ràng, dễ đọc

Hãy xem chi tiết hơn lý do tại sao bạn nên sử dụng PHPMailer thay vì mail[] hoặc các thư viện bên thứ ba khác

 

 

TẠI SAO SỬ DỤNG PHPMAILER THAY THẾ mail[]?

Vì ít nhất hai lý do chính đáng

Đầu tiên là mail[] dựa vào hệ thống con email của máy chủ để hoạt động. Điều này có nghĩa là nếu muốn thay đổi một số cài đặt như máy chủ SMTP hoặc các thông số xác thực, thì bạn cần phải thực hiện trên toàn hệ thống

Đó thường là một hoạt động khá khó khăn và trừ khi bạn có một máy chủ chuyên dụng hoặc bạn đang sử dụng môi trường phát triển PHP cục bộ, bạn có thể thậm chí không được phép thực hiện nó

Điều này cũng làm cho hầu như không thể sử dụng các cấu hình khác nhau cùng một lúc, ví dụ: sử dụng nhiều tài khoản SMTP và chuyển đổi giữa chúng theo chương trình

Như bạn sẽ thấy trong một phút nữa, với PHPMailer rất dễ dàng thay đổi động bất kỳ tham số nào ngay trong tập lệnh PHP của bạn

 

Lý do thứ hai là mail[] không cung cấp bất kỳ chức năng nâng cao nào

mail[] phù hợp để gửi các email văn bản đơn giản, thuần túy, nhưng sẽ rất hạn chế nếu bạn cần làm bất cứ điều gì hơn thế. Ví dụ, việc thêm tệp đính kèm hoặc gửi email HTML rất khó khăn với mail[], trong khi với với PHPMailer, đó chỉ là vấn đề của một dòng mã.

 

 

 

 

CÓ CÁC GIẢI PHÁP THAY THẾ PHPMAILER KHÔNG?

Có, có các thư viện khác như Zend Mail, SwiftMailer và Zeta Components Mail, nhưng PHPMailer thường là lựa chọn đầu tiên vì tính phổ biến của nó

Tất nhiên, nếu bạn đã quen thuộc với một tiện ích mở rộng thư khác và nó hoạt động tốt với bạn, bạn chỉ cần gắn bó với nó.

Nhưng nếu bạn muốn bắt đầu sử dụng một trong số chúng và bạn cần chọn cái nào sẽ sử dụng, thì PHPMailer có lẽ là lựa chọn tốt nhất vì đây là cái được sử dụng nhiều nhất

Các tiện ích mở rộng khác như Zend Mail, SwiftMailer hoặc Zeta Components Mail có thể tốt như PHPMailer, nhưng hãy xem kết quả tìm kiếm của Google cho “thư viện thư php”

 

 

 

Và đây là kết quả trên YouTube

 

 

Như bạn có thể thấy rõ ràng, PHPMailer thống trị kết quả đầu tiên. Điều đó không nhất thiết có nghĩa là PHPMailer tốt hơn các tiện ích mở rộng khác, nhưng điều đó có nghĩa là nó phổ biến nhất

Lý do chính bạn muốn sử dụng thư viện được sử dụng nhiều nhất là hỗ trợ. phần mềm càng được sử dụng rộng rãi thì càng dễ tìm trợ giúp và các ví dụ trực tuyến

 

Tôi cũng nên đề cập rằng tôi đã sử dụng PHPMailer cho công việc được vài năm rồi, gửi tới 100 email mỗi ngày bằng nó. Tôi sử dụng nó để gửi cảnh báo bằng trình nền PHP, để theo dõi việc sử dụng bộ nhớ của tập lệnh của tôi và để nhận cảnh báo nếu phát hiện các cuộc tấn công SQL injection

Theo những gì tôi nhớ, tôi chưa bao giờ gặp rắc rối với nó, vì vậy rất có thể bạn cũng vậy.

 

Nếu bạn muốn tìm hiểu thêm về cách sử dụng hàm PHP mail[], tiện ích mở rộng Pear Mail hay Swift Mailer, bạn có thể xem hướng dẫn chi tiết này từ Mailtrap.  

 

 

 

LÀM THẾ NÀO ĐỂ CÀI ĐẶT PHPMAILER?

Các phiên bản PHPMailer cũ hơn [tối đa phiên bản 5] được sử dụng để cung cấp  “PHPMailerAutoload. php” và tất cả những gì bạn cần làm là đưa nó vào tập lệnh của mình.

Tuy nhiên, bắt đầu từ phiên bản 6, tệp này không còn được cung cấp nữa. Bây giờ, để cung cấp lớp PHPMailer trong tập lệnh của bạn, bạn có hai tùy chọn

  1. sử dụng Trình soạn thảo để tải xuống PHPMailer và tự động tạo tệp trình tải tự động;
  2. tải xuống mã nguồn PHPMailer theo cách thủ công và tự bao gồm các tệp cần thiết

 

Tùy chọn đầu tiên là tùy chọn được đề xuất, vì Trình soạn thảo đảm nhận tất cả các bước kiểm tra tải xuống, cập nhật và phụ thuộc. Điều này đặc biệt hữu ích nếu bạn cũng cần cài đặt các thư viện khác, chẳng hạn như thư viện cần thiết để xác thực Google XOAUTH2 [Tôi sẽ cho bạn biết cách sử dụng XOAUTH2 với Google sau trong bài đăng này]

Tuy nhiên, tùy chọn thứ hai có thể hữu ích nếu bạn không muốn cài đặt Trình soạn thảo vì lý do nào đó, chẳng hạn nếu bạn đang sử dụng PHPMailer trên môi trường thử nghiệm

Hãy xem cả hai tùy chọn cài đặt, bắt đầu với tùy chọn có Composer

 

 

Cài đặt Composer và PHPMailer trên Windows [nếu bạn sử dụng XAMPP, WAMP, v.v. ]

Composer là một trình quản lý phụ thuộc cho PHP. Nó giúp bạn tải xuống, cài đặt và cập nhật các tiện ích mở rộng và thư viện PHP

Cài đặt Composer chỉ cần vài phút

 

  1. trước tiên, đảm bảo bạn đã cài đặt môi trường phát triển web [XAMPP, WAMP, EasyPHP, v.v. ] vì Trình soạn thảo cần một tệp thực thi PHP để hoạt động;
  2. tải xuống tệp cài đặt Trình soạn thảo từ đây [trong phần “Trình cài đặt Windows”] và chạy tệp đó;
  3. làm theo hướng dẫn cài đặt và đảm bảo bạn có thể chọn tệp thực thi PHP

 

 

  1. sau khi cài đặt hoàn tất, bạn sẽ có thể sử dụng các công cụ dòng lệnh Composer để cài đặt PHPMailer

 

Bây giờ bạn cần mở một thiết bị đầu cuối [bằng cách thực hiện “cmd. exe” hoặc tìm kiếm “Command prompt” trong menu Start] và điều hướng đến thư mục mà bạn muốn cài đặt các gói Composer bao gồm PHPMailer [nếu bạn cần trợ giúp về cách sử dụng thiết bị đầu cuối, chỉ cần để lại nhận xét bên dưới cho tôi]

Ví dụ: hãy sử dụng “C. \xampp\composer” làm thư mục cài đặt. Đầu tiên tạo thư mục, sau đó quay lại terminal và di chuyển vào thư mục bằng cách gõ “cd C. \xampp\nhà soạn nhạc”.

Sau đó, chỉ cần thực hiện lệnh. "nhà soạn nhạc yêu cầu phpmailer/phpmailer" như trong hình dưới đây

 

 

PHPMailer sẽ được cài đặt và bạn sẽ sẵn sàng sử dụng nó

 

Composer sẽ tạo ra một “autoload. php” mà bạn có thể sử dụng để bao gồm các thư viện đã cài đặt, trong trường hợp này là PHPMailer. Theo mặc định, tệp này nằm trong thư mục “nhà cung cấp”, mặc dù bạn có thể định cấu hình Trình soạn thảo để sử dụng tên thư mục khác

Vì vậy, giả sử thư mục cài đặt của bạn là “C. \xampp\composer”, bạn cần bao gồm “C. \xampp\composer\vendor\autoload. tập tin php”

 

Ngoài ra, vì bây giờ PHPMailer định nghĩa các lớp của nó trong không gian tên PHPMailer\PHPMailer , bạn nên sử dụng chỉ thị sử dụng tại .

 

Chủ Đề