在PHP中實現郵件群發,可以使用PHPMailer這樣的庫。以下是使用PHPMailer發送郵件群發的基本步驟:
下載并安裝PHPMailer: 可以通過Composer安裝PHPMailer。在命令行中運行以下命令:
composer require phpmailer/phpmailer
創建一個包含郵件發送邏輯的PHP文件(例如:send_email.php):
<?php
require 'vendor/autoload.php'; // 引入composer autoload文件
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
function send_email($to, $subject, $body) {
$mail = new PHPMailer(true);
try {
// 服務器設置
$mail->SMTPDebug = 2; // 開啟詳細調試輸出
$mail->isSMTP(); // 設置郵件發送使用SMTP
$mail->Host = 'smtp_host'; // 設置郵件發送的SMTP服務器地址
$mail->SMTPAuth = true; // 開啟使用SMTP認證功能
$mail->Username = 'your_email@example.com'; // 設置發送郵件的用戶名
$mail->Password = 'your_email_password'; // 設置發送郵件的密碼
$mail->SMTPSecure = 'tls'; // 設置加密類型
$mail->Port = 587; // 設置SMTP連接端口
// 發件人設置
$mail->setFrom('your_email@example.com', 'Your Name');
// 收件人設置
$mail->addAddress($to);
// 郵件內容設置
$mail->isHTML(true); // 設置郵件正文格式為HTML
$mail->Subject = $subject;
$mail->Body = $body;
// 發送郵件
$mail->send();
echo '郵件已成功發送。';
} catch (Exception $e) {
echo "郵件發送失敗。Mailer Error: {$mail->ErrorInfo}";
}
}
?>
準備要發送的郵件內容和收件人列表:
$to_list = ['recipient1@example.com', 'recipient2@example.com', 'recipient3@example.com'];
$subject = '郵件主題';
$body = '<h1>帶格式的郵件內容</h1><p>這是一封測試郵件。</p>';
循環調用發送函數,實現群發:
foreach ($to_list as $to) {
send_email($to, $subject, $body);
}
運行send_email.php文件,開始群發郵件:
php send_email.php
注意:在實際應用中,需要將上述代碼中的服務器設置、用戶名、密碼等替換為你自己的配置。同時,為了確保郵件能夠順利發送,確保你的SMTP服務器是可用的,并且正確配置了發件人和收件人的信息。