php发送电子邮件,php如何发送电子邮件?使用PHPMailer实现

php如何发送电子邮件?本篇文章给大家介绍使用PHPMailer+SMTP实现发送电子邮件的方法,让大家了解如何配置和使用PHPMailer 。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

PHPMailer是一个流行的PHP邮件发送库。它支持通过mail()函数或SMTP发送邮件。简而言之,PHPMailer是一种在基于PHP的环境中发送电子邮件的有效方法。

下面我们来看看

第1步 - 收集PHPMailer的详细信息

要将PHPMailer与Hostinger SMTP一起使用,首先需要创建一个电子邮件帐户。您可以在Web主机面板的“ 电子邮件帐户” 部分执行此操作 。

7db75044212bb5df5fd74c3f659a8b08.png

完成后,抓住位于同一部分的SMTP详细信息:

b726b8935e47449ee9dfa355d8d33d06.png

你现在应该有四种部分,它们是:

1、电邮帐户用户名

2、电邮帐户密码

3、SMTP主机

4、SMTP端口

第2步 - 安装PHPMailer

由于我们拥有所有必需的详细信息,因此我们可以开始PHPMailer设置。一种简单的方法是使用Composer。它已预先安装在我们的共享主机方案中,因此您只需通过SSH连接并执行以下命令:cd public_html

然后运行:composer require phpmailer/phpmailer

稍等片刻,安装完成,PHPMailer将出现在新创建的目录中。

第3步 - 了解PHPMailer

要了解PHPMailer及其工作原理,让我们研究一下使用SMTP进行传递的示例。<?php

use PHPMailer\PHPMailer\PHPMailer;

require '../vendor/autoload.php';

$mail = new PHPMailer;

$mail->isSMTP();

$mail->SMTPDebug = 2;

$mail->Host = 'mx1.hostinger.com';

$mail->Port = 587;

$mail->SMTPAuth = true;

$mail->Username = 'test@hostinger-tutorials.com';

$mail->Password = 'EMAIL_ACCOUNT_PASSWORD';

$mail->setFrom('test@hostinger-tutorials.com', 'Your Name');

$mail->addReplyTo('reply-box@hostinger-tutorials.com', 'Your Name');

$mail->addAddress('example@gmail.com', 'Receiver Name');

$mail->Subject = 'PHPMailer SMTP message';

$mail->msgHTML(file_get_contents('message.html'), __DIR__);

$mail->AltBody = 'This is a plain text message body';

$mail->addAttachment('test.txt');

if (!$mail->send()) {

echo 'Mailer 错误: ' . $mail->ErrorInfo;

} else {

echo '发送消息!';

}

?>

让我们看看每个组件的作用:

7350576712c1c04b5534672542c7bc8e.png

专业提示:

SMTPDebug = 2; 在测试脚本并查看脚本的工作原理时非常有用。

将其设置为SMTPDebug = 0; 在最终版本中,以避免最终用户看到SMTP传递报告。

如果您检查了整个代码,您会注意到我们正在做的事情与第一个示例中的有些不同。我们正在发送HTML消息。它的内容将取自位于同一目录中的message.html 文件。与纯文本消息相比,这使您可以格式化文本并提供更多功能。

第4步 - 运行PHPMailer脚本

让我们创建一个testphpmailer.php文件,并使用我们之前检索到的SMTP详细信息填写所有字段。通过 在浏览器中输入YourDomain.com/testphpmailer.php来执行脚本 ,您将看到类似的消息:

c532fbf3abb7d2b046b03a5b4bf01210.png

第5步 - PHPMailer联系表单示例

您可以使用PHPMailer,而不仅仅是发送简单的消息。您可以利用它的一种方法是创建一个联系表单,您的访问者或用户可以与您联系。以下是此类脚本的基本示例:<?php

use PHPMailer\PHPMailer\PHPMailer;

require '../vendor/autoload.php';

$mail = new PHPMailer;

$mail->isSMTP();

$mail->Host = 'mx1.hostinger.com';

$mail->Port = 587;

$mail->SMTPAuth = true;

$mail->Username = 'test@hostinger-tutorials.com';

$mail->Password = 'EMAIL_ACCOUNT_PASSWORD';

$mail->setFrom('test@hostinger-tutorials.com', 'Mr. Drago');

$mail->addAddress('example@gmail.com', 'Receiver Name');

if ($mail->addReplyTo($_POST['email'], $_POST['name'])) {

$mail->Subject = 'PHPMailer contact form';

$mail->isHTML(false);

$mail->Body = <<

Email: {$_POST['email']}

Name: {$_POST['name']}

Message: {$_POST['message']}

EOT;

if (!$mail->send()) {

$msg = '对不起,出了点问题。请稍后再试。';

} else {

$msg = '发送消息成功!谢谢您联络我们。';

}

} else {

$msg = '电子邮件地址无效,邮件被忽略。';

}

?>

邮件表单

Let's get in touch!

echo "

$msg

";

} ?>

名称:

电子邮件:

消息:

最终结果是:

3b2d2a59240604589ba8dd099f3d9fee.png

一旦用户提交了他的消息,他将得到确认,内容将到达addAddress 字段中输入的电子邮箱 。

专业提示:如果PHPMailer联系表单不起作用,请添加以下行以查看导致该问题的原因: $ mail-> SMTPDebug = 2;

一旦完成,不要忘记将其删除或设置为零!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值