📅  最后修改于: 2023-12-03 14:52:01.091000             🧑  作者: Mango
在实际的项目中,我们经常需要使用 PHP 发送电子邮件。为了方便使用,我们可以使用 PHPMailer 这个第三方类库来发送邮件。
我们可以通过 Composer 安装 PHPMailer:
composer require phpmailer/phpmailer
我们需要在发送电子邮件前进行一些设置:
// 引入 PHPMailer 类
use PHPMailer\PHPMailer\PHPMailer;
// 创建一个 PHPMailer 实例
$mail = new PHPMailer(true);
// 邮件的发送者和接收者
$mail->setFrom('sender@example.com', '发件人');
$mail->addAddress('recipient@example.com', '收件人');
// 邮件主题和内容
$mail->Subject = '邮件主题';
$mail->Body = '邮件内容';
我们需要设置邮件的发送者和接收者。使用 setFrom()
方法设置发送者信息,方法的第一个参数为发送者的邮箱地址,第二个参数为发送者的名称;使用 addAddress()
方法设置接收者信息,方法的第一个参数为接收者的邮箱地址,第二个参数为接收者的名称。
邮件的主题和内容分别使用 Subject
属性和 Body
属性设置。
接下来,我们需要进行 SMTP 邮件服务的设置:
// 邮件服务的设置
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'sender@example.com';
$mail->Password = 'password';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
我们使用 isSMTP()
方法进行 SMTP 设置,然后设置 SMTP 服务器的地址和端口,邮件服务的用户名和密码,以及使用 TLS 协议进行连接。其中,用户名和密码为 SMTP 邮件服务的凭据信息。
最后,我们可以调用 send()
方法来发送邮件:
// 发送邮件
$mail->send();
完整的代码示例:
// 引入 PHPMailer 类
use PHPMailer\PHPMailer\PHPMailer;
// 创建一个 PHPMailer 实例
$mail = new PHPMailer(true);
try {
// 邮件的发送者和接收者
$mail->setFrom('sender@example.com', '发件人');
$mail->addAddress('recipient@example.com', '收件人');
// 邮件主题和内容
$mail->Subject = '邮件主题';
$mail->Body = '邮件内容';
// 邮件服务的设置
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'sender@example.com';
$mail->Password = 'password';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// 发送邮件
$mail->send();
echo '邮件已发送';
} catch (Exception $e) {
echo '邮件发送失败:' . $mail->ErrorInfo;
}
PHPMailer 提供了便捷的方法来发送电子邮件,我们只需要进行简单的配置就可以使用。当然,我们需要保证 SMTP 邮件服务的凭据信息是正确的,否则邮件发送会失败。