配置PHP郵件發送通常涉及設置SMTP(簡單郵件傳輸協議)服務器信息,以便PHP能夠通過它發送電子郵件。以下是一個基本的配置示例,使用PHPMailer庫來發送郵件:
composer require phpmailer/phpmailer
send_email.php
,并在其中引入PHPMailer:<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
// 服務器設置
$mail->SMTPDebug = 2;
$mail->isSMTP();
$mail->Host = 'smtp.example.com'; // 請替換為你的SMTP服務器地址
$mail->SMTPAuth = true;
$mail->Username = 'your_username@example.com'; // 請替換為你的SMTP用戶名
$mail->Password = 'your_password'; // 請替換為你的SMTP密碼
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587; // 或者465,取決于你的SMTP服務器配置
// 發件人和收件人
$mail->setFrom('your_email@example.com', 'Mailer');
$mail->addAddress('recipient@example.com', 'Joe User'); // 收件人的電子郵件地址
// 郵件內容
$mail->isHTML(true);
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
$mail->send();
echo 'Message has been sent';
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";
}
?>
請確保將上述代碼中的smtp.example.com
、your_username@example.com
、your_password
、your_email@example.com
和recipient@example.com
替換為你自己的SMTP服務器信息和電子郵件地址。
send_email.php
腳本,它將嘗試通過配置的SMTP服務器發送一封電子郵件。請注意,不同的SMTP服務器可能有不同的配置要求,例如是否需要SSL/TLS加密、端口號等。務必參考你的SMTP服務提供商的文檔來獲取正確的配置信息。此外,出于安全考慮,不要在代碼中硬編碼敏感信息,如密碼。可以使用環境變量或配置文件來安全地存儲這些信息。