Hướng dẫn php script to send email using smtp authentication - tập lệnh php để gửi email bằng xác thực smtp

Những gì để biết

  • Tùy chọn lớp PHP: PHPMailer, SwiftMailer, Zend_mail, Xpertmailer, Pear Mail.
  • Pear Mail: Lưu ý Tên máy chủ thư> Kiểm tra xem Pear Mail được cài đặt> Sửa đổi tệp PHP bằng các ví dụ được đưa ra.

Bài viết này giải thích cách sử dụng xác thực SMTP để gửi email với chức năng Php Mail () trong Pear Mail.

Gửi email với chức năng thư PHP

Khi bạn sử dụng chức năng Php Mail (), cuối cùng bạn sẽ gửi email trực tiếp từ máy chủ web của mình thay vì máy chủ thư của bạn. Nếu bạn có một máy chủ thư qua máy chủ web của bạn hoặc thậm chí là một máy chủ thư có máy chủ khác, thường thì tốt hơn là gửi thư qua đó.

Vấn đề là hàm PHP Mail () không cung cấp bất kỳ cách tích hợp nào để gửi thư qua SMTP. Nếu bạn muốn mở chức năng đó, bạn sẽ cần cài đặt một lớp PHP bổ sung.

Dưới đây là một số tùy chọn hoạt động:

  • PHPMailer
  • Swiftmailer
  • Zend_Mail
  • Xpertmailer
  • Thư lê

Chúng tôi sẽ chỉ cho bạn cách sử dụng Pear Mail, nhưng bạn có thể sử dụng bất kỳ lớp nào hỗ trợ SMTP.

Hình ảnh anh hùng / Getty

Nếu máy chủ web của bạn đã có một hoặc nhiều trong số các lớp này được cài đặt, nó có thể có các hướng dẫn liên quan đến tình huống của bạn. Nếu vậy, hãy tiếp tục và sử dụng lớp mà bạn có quyền truy cập.

Chỉ sử dụng phương pháp này nếu bạn đang sử dụng PHP để tạo các biểu mẫu thư tùy chỉnh của riêng bạn. Nếu bạn đang sử dụng Hệ thống quản lý nội dung (CMS) như WordPress, hãy tìm một plugin hoặc chức năng tích hợp để gửi thư qua SMTP, thay vì cố gắng tạo riêng của bạn.

Cách sử dụng lê để gửi thư qua SMTP

  1. Đảm bảo rằng tên miền của bạn được chỉ vào hồ sơ trao đổi thư (MX) của máy chủ máy chủ thư của bạn và ghi chú tên máy chủ thư của bạn. Ví dụ: nó có thể là mail.yourdomain.net hoặc smtp.yourdomain.net.

  2. Kiểm tra xem Pear Mail đã được cài đặt trên máy chủ thư của bạn.

  3. Nếu Pear Mail không được cài đặt, hãy tham khảo ý kiến ​​máy chủ thư web của bạn để biết các hướng dẫn cụ thể để cài đặt nó.

  4. Khi Pear Mail được cài đặt, hãy sửa đổi một trong các tệp PHP ví dụ trong các phần sau để phù hợp với nhu cầu của bạn.

Ví dụ: script pear mail php cho smtp mail

Bạn có thể tạo tập lệnh của riêng mình từ đầu nếu bạn muốn hoặc sửa đổi ví dụ sau theo ý thích của bạn. Đảm bảo nhập tên máy chủ thư web của bạn trong biến máy chủ và sử dụng thông tin đăng nhập của bạn cho máy chủ thư web của bạn trong các trường tên người dùng và mật khẩu.

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "yourmailhost.com";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("

". $ mail-> getMessage ()."

");} khác {echo ("
} else {
echo("

Tin nhắn đã gửi đi thành công!

");}
}

Ví dụ tập lệnh Php Mail Php để xác thực SMTP và mã hóa SSL

Nếu bạn muốn sử dụng xác thực SMTP và mã hóa SSL, bạn sẽ phải thực hiện một vài sửa đổi cho ví dụ trước. Bạn sẽ cần trỏ biến máy chủ vào máy chủ thư SSL của mình và cũng chỉ định số cổng như 25, 465, 587, 2525 hoặc 8025. Liên hệ với máy chủ thư web của bạn để biết thêm thông tin nếu bạn không thể tìm ra cổng nào sử dụng.

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("

". $ mail-> getMessage ()."

");} khác {echo ("
} else {
echo("

Tin nhắn đã gửi đi thành công!

");}
}

Cảm ơn vì đã cho chúng tôi biết!

Nhận tin tức công nghệ mới nhất được gửi mỗi ngày

Đặt mua

Bài viết về cách gửi email trong PHP ban đầu được xuất bản tại blog của MailTrap.

Hôm nay tôi rất muốn chia sẻ với bạn hướng dẫn gửi email PHP, một trong những ngôn ngữ phát triển web phổ biến nhất.

Hàm thư tích hợp PHP ()

Có hai cách cơ bản để gửi email với PHP: Chức năng thư tích hợp và các gói thư bên ngoài.

Hàm thư tích hợp PHP () rất đơn giản nhưng đồng thời, nó cung cấp một chức năng hạn chế để gửi email. Bạn đã giành chiến thắng có thể thêm các tệp đính kèm vào email của mình và xây dựng một mẫu HTML tuyệt đẹp với hình ảnh nhúng cũng sẽ là một nhiệm vụ khó khăn.

Mặt khác của hàm thư PHP () là email được gửi từ máy chủ web của bạn, điều này có thể gây ra các vấn đề về khả năng giao hàng do những lo ngại về bảo mật như nghi ngờ thư rác và danh sách đen. Cách tốt nhất để khắc phục vấn đề này là gửi tin nhắn qua máy chủ SMTP, tuy nhiên, chức năng này cũng bị hạn chế. Php Mail () thường không cho phép bạn sử dụng máy chủ SMTP bên ngoài và nó không hỗ trợ xác thực SMTP.

Nói cách khác, tôi không khuyên bạn nên sử dụng chức năng thư tích hợp PHP () và khuyên bạn nên tránh những cơn đau đầu có thể gây ra bằng cách cài đặt gói Mailer bên ngoài.

Nếu bạn vẫn cam kết với hàm thư tích hợp PHP () và sẵn sàng chấp nhận thử thách, hãy để Lôi xem mã cơ bản và các tham số chính của nó.

Cú pháp và tham số Cú pháp php khá đơn giản:
The PHP mail syntax is pretty simple:


Nó sử dụng các tham số sau:

  • Tiết $ đến Định dạng địa chỉ email có thể là hoặc người dùng. Nếu có một số người nhận, hãy tách họ bằng dấu phẩy (-s).
  • Chủ đề của người Viking Các dòng phải được phân tách bằng CRLF (\ r \ n). Mỗi dòng không được vượt quá 70 ký tự.
  • Tiết [Tiêu đề $] Tiết = Người nhận bổ sung tin nhắn của bạn, có thể được bao gồm trong CC hoặc BCC. Các tiêu đề là tùy chọn, ngoại trừ các tiêu đề từ từ từ trên mạng: Nó phải được chỉ định, nếu không, bạn sẽ nhận được một thông báo lỗi như cảnh báo: mail (): "sendmail_from" không được đặt trong php.ini hoặc tùy chỉnh "từ:".

Để biết thêm chi tiết và các tham số bổ sung, hãy tham khảo tài liệu PHP.

Gửi email HTML bằng hàm php mail ()

Cơ thể của thông điệp có thể được viết bằng HTML. Tuy nhiên, như tôi đã đề cập ở trên, nó nên đơn giản. Trong hàm thư PHP (), phần HTML sẽ trông như thế này:

// Message
$message = '


  Review Request Reminder


  

Here are the cases requiring your review in December:

Case titleCategoryStatusDue date
Case 1DevelopmentpendingDec-20
Case 1DevOpspendingDec-21
';

Điều quan trọng cần nhớ là gửi thư HTML, bạn cần đặt tiêu đề loại nội dung:

$headers[] = 'MIME-Version: 1.0';
$headers[] = 'Content-type: text/html; charset=iso-8859-1';

Gửi email qua máy chủ SMTP trong PHP

Tôi chỉ định cài đặt SMTP ở đâu? Đây là một câu hỏi công bằng. Chuyển đến thư mục cài đặt PHP và định cấu hình chúng trong tệp Php.ini. Nhưng điều này sẽ chỉ hoạt động cho các giải pháp như localhost hoặc XMAPP vì như tôi đã đề cập, chức năng thư PHP không hỗ trợ xác thực SMTP và không cho phép gửi tin nhắn qua các máy chủ bên ngoài.

Có một số tùy chọn khác, khá khó hiểu nhưng tôi đã giành được quảng cáo chúng và khuyên bạn nên sử dụng các gói thư PHP bên ngoài để gửi email qua máy chủ SMTP bên ngoài.

PHPMailer

PHPMailer là thư viện gửi email cổ điển cho PHP. Nó hỗ trợ một số cách gửi tin nhắn email như mail (), sendmail, qmail và gửi trực tiếp đến máy chủ SMTP. Bên cạnh đó, nó cung cấp một danh sách các tính năng nâng cao:

  • Xác thực SMTP
  • Mã hóa an toàn/mime
  • Hỗ trợ các giao thức TLS và SSL
  • Nội dung HTML cùng với văn bản đơn giản
  • Nhiều tệp đính kèm FS, Chuỗi và nhị phân
  • Hỗ trợ hình ảnh nhúng.

Gửi email với PHPMailer và SMTP

Để gửi email với PHPMailer và SMTP, bạn cần cài đặt PHPMailer và định cấu hình cài đặt SMTP trước.

Cách cài đặt phpmailer

Lên đến phiên bản 5, PHPMailer đã cung cấp tệp phpmailerautoload.php, do đó, nó được yêu cầu chỉ đưa nó vào tập lệnh của bạn và tạo phiên bản PHPMailer. Bắt đầu từ bản phát hành PHPMailer 6.0 vào tháng 8 năm 2017, bạn cần cài đặt nó, tốt nhất là thông qua trình soạn thảo, Trình quản lý phụ thuộc cho PHP (theo cách này được đề xuất bởi người tạo PHPMailer trên GitHub). Sau khi cài đặt trình soạn thảo, hãy thêm dòng này vào tệp Composer.json của bạn:
Starting from PHPMailer 6.0 release in August 2017, you need to install it, preferably via Composer, a dependency manager for PHP (this way is recommended by PHPMailer’s creators on Github). After installing Composer, add this line to your composer.json file:

"phpmailer/phpmailer": "~6.0"

hoặc chạy

composer require phpmailer/phpmailer

Ví dụ, nếu bạn không muốn cài đặt Trình soạn thảo trong khi làm việc trong môi trường thử nghiệm, bạn có thể tải xuống các tệp có mã nguồn PHPMailer, sau đó sao chép nội dung của thư mục PHPMailer vào một trong các thư mục bao gồm được chỉ định trong cấu hình PHP của bạn và Tải từng tệp lớp theo cách thủ công:

Thêm lớp ngoại lệ sẽ giúp bạn xử lý lỗi và gỡ lỗi chúng. Trong PHP, nó hoạt động tương tự như các ngôn ngữ lập trình khác. Vì vậy, nếu không có nó, nếu có lỗi trong mã gửi email của bạn, bạn sẽ không thấy một tin nhắn nói rằng lớp ngoại lệ không được tìm thấy, nhưng bạn đã giành chiến thắng với bất kỳ chi tiết nào về cách gỡ lỗi. Tôi sẽ mô tả gỡ lỗi là một phần riêng của bài đăng này.

Để xem hướng dẫn chi tiết về cài đặt, hãy kiểm tra tài liệu PHPMail trên GitHub.

Cấu hình SMTP

Để kiểm tra chức năng thư PHP, tôi sẽ sử dụng MailTrap, một máy chủ SMTP giả, không làm ngập các hộp thư đến của chúng tôi hoặc thậm chí tệ hơn, hộp thư đến của khách hàng của chúng tôi. Khi bạn đảm bảo rằng mọi thứ hoạt động đúng và tin nhắn email của bạn trông đúng, bạn sẽ dễ dàng thay thế các cài đặt SMTP trong các ví dụ của chúng tôi bằng máy chủ thực của bạn, cho dù bạn thích một dịch vụ địa phương hoặc dịch vụ của bên thứ ba, như Gmail. .

Nếu bạn chưa sử dụng MailTrap, hãy tạo tài khoản miễn phí, hãy truy cập hộp thư đến của bạn và sao chép các giá trị sau từ tab Cài đặt SMTP vào tập lệnh PHPMailer của bạn:

  • Máy chủ máy chủ ($ mail-> host = xông smtp.mailtrap.io,)
  • Tên người dùng ($ mail-> username = ‘234234234, (ví dụ, được tạo bởi mailtrap)
  • Mật khẩu ($ mail-> mật khẩu = 435454545, (ví dụ, được tạo bởi mailtrap)
  • và cổng ($ mail-> cổng = 25, hoặc 465 hoặc 2525).

Gửi email HTML qua SMTP với PHPMailer

Nhiều khả năng, bạn sẽ sử dụng HTML để thiết kế thông báo email của mình. Vì vậy, hãy để xem xét một số ví dụ về việc sử dụng các phương thức và thuộc tính HTML.

Thông báo HTML cơ bản

Trong mọi trường hợp, tôi bắt đầu với lớp PHPMailer:

Nếu bạn đã sử dụng Trình soạn thảo để cài đặt, bao gồm tệp AutoLoad.php được tạo của trình soạn thảo:

require 'pathtocomposer\composer\vendor\autoload.php';
If you have installed PHPMailer manually, initialize it like this:
require path/to/PHPMailer/src/PHPMailer.php'; 
require path/to/PHPMailer/src/SMTP.php'; 
require path/to/PHPMailer/src/Exception.php';
The next step is to create a new PHPMailer object:
$mail = new PHPMailer();

Bây giờ, hãy để di chuyển đến một cấu hình SMTP:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
0

Chỉ định người nhận tin nhắn của bạn:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
1

Tùy chọn bạn có thể thêm CC:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
2

Đặt chủ đề cho tin nhắn của bạn:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
3

Sau đó đặt định dạng email thành HTML với thuộc tính ISHTML (Đúng):

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
4

Bây giờ bạn có thể nhập nội dung mong muốn:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
5

Với PHPMailer, bạn cũng có thể tạo một email HTML đẹp, với định dạng tùy chỉnh, hình ảnh và gửi email với tệp đính kèm. Để thuận tiện cho bạn, PHPMailer cung cấp tùy chọn đọc thân thông báo HTML từ tệp bên ngoài, chuyển đổi hình ảnh được tham chiếu thành nhúng cũng như chuyển đổi HTML thành một cơ thể thay thế văn bản đơn giản cơ bản. Bằng cách này, bạn sẽ không quá tải mã gửi tin nhắn của mình với HTML và sẽ có thể cập nhật mẫu HTML của bạn một cách độc lập. Để bao gồm một tệp HTML riêng biệt, hãy thêm các thuộc tính sau:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
6

Cuối cùng, chỉ định các thuộc tính gửi email:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
7

Kết quả Tin nhắn đã được gửi cho bạn thông báo cho bạn rằng mã của bạn thực thi chính xác. Để kiểm tra kết quả giao hàng và chi tiết, hãy truy cập hộp thư đến MailTrap của bạn: Tin nhắn của bạn sẽ đến đó trong vài giây.

Với MailTrap, bạn sẽ có thể xem lại mã HTML, dữ liệu thô, thực hiện kiểm tra trình duyệt email cũng như đảm bảo tin nhắn của bạn giành được được đánh dấu là spam, hoặc tên miền gửi của bạn đã giành được danh sách đen.

Khi bạn đã xác minh rằng kết quả gửi PHPMailer của bạn phù hợp với mong đợi của bạn, bạn có thể chuyển sang gửi email thông thường qua bất kỳ máy chủ SMTP ưa thích nào.

Để biết thêm các ví dụ về cấu hình, hãy kiểm tra thư mục Ví dụ trên các tài liệu Phpmailer.

Cách gỡ lỗi các vấn đề SMTP trong phpmailer

Nếu bạn gặp một số rắc rối khi gửi email qua máy chủ SMTP, lệnh smtpdebug sẽ giúp bạn khám phá những lỗi đó và tìm hiểu những gì nên được sửa.

Bật gỡ lỗi SMTP và đặt mức gỡ lỗi trong tập lệnh của bạn như sau:

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
8

Để hiểu rõ hơn về cách gỡ lỗi trong PHPMailer hoạt động, hãy để xem xét một vài ví dụ.

Ví dụ 1. Tên máy chủ SMTP không hợp lệ

require_once "Mail.php";
$from = "Sender Name ";
$to = "Recipient Name ";
$subject = " Subject Line Here: ";
$body = " any message you want ";
$host = "ssl://yourmailhost.com";
$port = "587";
$username = "your username or email";
$password = "your password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("
9

Trong ví dụ này, tôi đã nhập một tên máy chủ không hợp lệ: mailtrap.io thay vì smtp.mailtrap.io. và ngay lập tức nhận được một thông báo rằng một lỗi đã xảy ra ở giai đoạn đầu tiên của giao tiếp với máy chủ.

Ví dụ 2. Thông tin xác thực không hợp lệ


0

Ví dụ này cho thấy lỗi xảy ra lỗi: bây giờ SMTP, tên máy chủ và cổng của nó là hợp lệ nhưng không tìm thấy kết hợp thông tin đăng nhập và mật khẩu, vì vậy bạn nên kiểm tra kỹ và sửa đổi thông tin đăng nhập của mình.

Có một vài bài viết chi tiết về GitHub về việc gỡ lỗi và khắc phục sự cố, hãy tham khảo chúng khi bạn cần đi sâu hơn vào các chủ đề này.

Bạn nên xem xét những gì khác về các tùy chọn gửi thư PHP?

Trong bài viết này, tôi đã mô tả các nguyên tắc gửi email, cú pháp và tham số của PHP cơ bản. Bên cạnh đó, tôi đã xem xét hai cách chính để gửi email với PHP: chức năng thư tích hợp của nó và PHPMailer, gói thư bên ngoài phổ biến nhất.

Không còn nghi ngờ gì nữa, cái thứ hai là một giải pháp nâng cao hơn nhiều, với hỗ trợ xác thực SMTP và một bộ các tính năng liên quan đến HTML rộng lớn, tuy nhiên, chức năng thư PHP () vẫn có thể là một tùy chọn nếu bạn đang gửi thông báo văn bản đơn giản qua localhost.

Ngoài phpmailer, còn có một loạt các giải pháp đáng chú ý khác để xây dựng email HTML và gửi nó qua máy chủ SMTP, chẳng hạn như gói Pear Mail, Swift Mailer hoặc Zend Framework.

Tôi sẽ xem xét chúng và các tùy chọn gửi thư PHP khác trong các bài đăng trong tương lai.

Làm cách nào để gửi thư PHP qua SMTP?

Viết mã PHP để gửi email bằng Gmail SMTP..
Bước 1: Tải xuống Thư viện PHPMailer từ liên kết GitHub này. ....
Bước 2: Viết mã PHP để tạo kết nối SMTP. ....
Bước 3: Bao gồm các gói và tệp cho giao thức PHPMailer và SMTP: ....
Bước 4: Khởi tạo Mailer PHP và đặt SMTP làm giao thức gửi thư:.

Chúng tôi có thể gửi email qua tập lệnh PHP không?

Sử dụng hàm php mail (). Hàm thư tích hợp của PHP () là một trong những cách đơn giản nhất để gửi email trực tiếp từ chính máy chủ web. Nó chỉ cần ba tham số bắt buộc: địa chỉ email, chủ đề email và thân thông báo và gửi nó cho người nhận.PHP's built-in mail() function is one of the simplest ways to send emails directly from the web server itself. It just takes three mandatory parameters: the email address, email subject and message body—and sends it to the recipient.

Php mail gửi email như thế nào?

PHP sử dụng hàm mail () để gửi email.Hàm này yêu cầu ba đối số bắt buộc chỉ định địa chỉ email của người nhận, chủ đề của tin nhắn và tin nhắn thực tế cũng có hai tham số tùy chọn khác.mail (đến, chủ đề, tin nhắn, tiêu đề, tham số);mail() function to send an email. This function requires three mandatory arguments that specify the recipient's email address, the subject of the the message and the actual message additionally there are other two optional parameters. mail( to, subject, message, headers, parameters );

Thư PHP có yêu cầu SMTP không?

Khi bạn sử dụng chức năng thư PHP, bạn sẽ gửi email trực tiếp từ máy chủ web của mình.Điều này có thể gây ra các vấn đề nếu địa chỉ từ không được đặt đúng hoặc nếu email của bạn không được lưu trữ với Dreamhost.Gửi thư qua SMTP được khuyến nghị vì email được gửi từ máy chủ thư thay vì máy chủ web.Sending mail via SMTP is recommended as email is sent from the mail server rather than the web server.