PHPMailer là một lớp tạo và vận chuyển email được viết bằng php. Lớp này giúp dễ dàng tạo và gửi email văn bản và html có tệp đính kèm
Cách dễ nhất để cài đặt lớp này là sử dụng trình soạn thảo. Nhưng hầu hết các trang web được lưu trữ trong không gian dùng chung và việc cài đặt trình soạn thảo không phải là một tùy chọn. Tôi sẽ chỉ cho bạn cách bạn có thể cài đặt và sử dụng PHPMailer mà không cần trình soạn thảo
Lần đầu tiên tải xuống PHPMailer từ Github
Giải nén kho lưu trữ và tải nội dung lên một thư mục trên máy chủ web của bạn
Tạo hoặc sửa đổi mã gửi thư của bạn bằng cách sau
use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require 'src/Exception.php'; require 'src/PHPMailer.php'; require 'src/SMTP.php'; $mail = new PHPMailer; $mail->isSMTP[]; $mail->SMTPDebug = 2; $mail->Host = "your_smtp_host"; $mail->Port = "your_smtp_port"; // typically 587 $mail->SMTPSecure = 'tls'; // ssl is depracated $mail->SMTPAuth = true; $mail->Username = "your_mail_username"; $mail->Password = "your_mail_password"; $mail->setFrom["your_email", "your_name"]; $mail->addAddress["send_to_email_address", "send_to_Name"]; $mail->Subject = 'Any_subject_of_your_choice'; $mail->msgHTML["test body"]; // remove if you do not want to send HTML email $mail->AltBody = 'HTML not supported'; $mail->addAttachment['docs/brochure.pdf']; //Attachment, can be skipped $mail->send[];
Một vài điều cần lưu ý ở đây
$mail->SMTPDebug dùng để hiển thị lỗi và có thể bỏ qua.
$mail->SMTPAuth có thể được nhận xét nếu không yêu cầu xác thực.
Các nội dung tùy chọn khác được nhận xét cùng với mã ở trên
QUAN TRỌNG. Một điều quan trọng cần lưu ý ở đây là đường dẫn của các tệp bao gồm. Nếu bạn có mã thư trên một tệp, hãy nói thư. php, tệp này phải được đặt ngang hàng với thư mục src của gói PHPMailer. Ví dụ, nhìn vào cấu trúc thư mục của tôi để gửi thư
Như bạn có thể thấy thư của tôi. php và thư mục src của Gói thư PHP đều ở cùng cấp độ. Nếu bạn thay đổi cấu trúc này, thì bạn sẽ cần thay đổi các đường dẫn bao gồm trong thư. cả tệp php
Đánh giá của bạn cho Phpmailer
Đánh giá của bạn cho Phpmailer
Cảm ơn bạn đã đánh giá
Bạn nghĩ gì về Phpmailer?
Để lại đánh giáÚI. Việc này thật là xấu hổ
Đã xảy ra lỗi nghiêm trọng.
Hãy thử cách này thay thế
XPertMailer là một lớp PHP sẽ giúp bạn gửi/đọc thư loại MIME được mã hóa [văn bản, HTML, hình ảnh nhúng HTML, tệp đính kèm] tới máy chủ cục bộ, máy khách, chuyển tiếp với xác thực tùy chọn và hỗ trợ TLS/SSL
Văn phòng mở của Apache
Bộ năng suất mã nguồn mở và miễn phí
7-Zip
Trình lưu trữ tệp miễn phí để nén cực cao
Clonezilla
Một chương trình nhân bản/tạo ảnh đĩa và phân vùng
Xem phần mềm
Máy chủ email MDaemon
MDaemon Email Server là một trong những giải pháp thay thế Microsoft Exchange đầu tiên được cung cấp cho các doanh nghiệp trên toàn thế giới. Nó đã được phát triển với đầu vào liên tục từ các chuyên gia CNTT đang tìm kiếm một máy chủ thư dễ sử dụng, đáng tin cậy và an toàn, không yêu cầu quản trị tốn kém hoặc
Xem phần mềm
người gửi thư
Kingmailer là một máy chủ thư / dịch vụ SMTP đơn giản và đầy đủ tính năng dành cho bất kỳ ai, không chỉ các nhà phát triển. Hãy nghĩ đến Sendgrid, Mailgun hoặc Postmark, nhưng dễ sử dụng, không tốn kém và 98% gửi đến hộp thư đến. Bắt đầu gửi, nhận hoặc định tuyến email của bạn với một vài cú nhấp chuột. Kingmailer dành cho mọi người
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
- tại sao lại sử dụng PHPMailer thay vì mail[] hoặc các thư viện khác?
- cách cài đặt PHPMailer trên Windows và Linux [cập nhật 2018, có và không có Composer]
- làm thế nào để gửi email đầu tiên của bạn
- cách sử dụng lớp PHPMailer
- cách sử dụng máy chủ SMTP tùy chỉnh
- gỡ lỗi và xử lý lỗi
- cách sử dụng PHPMailer với Google [Gmail] SMTP
- phần kết luận
Thiết kế bởi Freepik
TẠI SAO SỬ DỤNG PHPMAILER?
PHPMailer cung cấp nhiều chức năng trên chức năng chính của PHP mail[], 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ố tùy chọn cài đặt như máy chủ SMTP hoặc các thông số xác thực, thì bạn cần 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
- 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;
- 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
- 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;
- 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 đó;
- 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
- 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 .