在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服务器是可用的,并且正确配置了发件人和收件人的信息。