PHPMailer是一个流行的PHP邮件发送库。它支持通过mail()函数或SMTP发送邮件。简而言之,PHPMailer是一种在基于PHP的环境中发送电子邮件的有效方法。
下面我们来看看
第1步 - 收集PHPMailer的详细信息
要将PHPMailer与Hostinger SMTP一起使用,首先需要创建一个电子邮件帐户。您可以在Web主机面板的“ 电子邮件帐户” 部分执行此操作 。
完成后,抓住位于同一部分的SMTP详细信息:
你现在应该有四种部分,它们是:
1、电邮帐户用户名
2、电邮帐户密码
3、SMTP主机
4、SMTP端口
第2步 - 安装PHPMailer
由于我们拥有所有必需的详细信息,因此我们可以开始PHPMailer设置。一种简单的方法是使用Composer。它已预先安装在我们的共享主机方案中,因此您只需通过SSH连接并执行以下命令:
cd html' target='_blank'>public_html
然后运行:
composer require phpmailer/phpmailer
稍等片刻,安装完成,PHPMailer将出现在新创建的目录中。
第3步 - 了解PHPMailer
要了解PHPMailer及其工作原理,让我们研究一下使用SMTP进行传递的示例。
?phpuse 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 发送消息! ?
让我们看看每个组件的作用:
专业提示:
SMTPDebug = 2; 在测试脚本并查看脚本的工作原理时非常有用。
将其设置为SMTPDebug = 0; 在最终版本中,以避免最终用户看到SMTP传递报告。
如果您检查了整个代码,您会注意到我们正在做的事情与第一个示例中的有些不同。我们正在发送HTML消息。它的内容将取自位于同一目录中的message.html 文件。与纯文本消息相比,这使您可以格式化文本并提供更多功能。
第4步 - 运行PHPMailer脚本
让我们创建一个testphpmailer.php文件,并使用我们之前检索到的SMTP详细信息填写所有字段。通过 在浏览器中输入YourDomain.com/testphpmailer.php来执行脚本 ,您将看到类似的消息:
第5步 - PHPMailer联系表单示例
您可以使用PHPMailer,而不仅仅是发送简单的消息。您可以利用它的一种方法是创建一个联系表单,您的访问者或用户可以与您联系。以下是此类脚本的基本示例:
?phpuse 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 = EOTEmail: {$_POST[ email ]}Name: {$_POST[ name ]}Message: {$_POST[ message ]}if (!$mail- send()) { $msg = 对不起,出了点问题。请稍后再试。 } else { $msg = 发送消息成功!谢谢您联络我们。 } else { $msg = 电子邮件地址无效,邮件被忽略。 !DOCTYPE html html lang= en head meta charset= UTF-8 title 邮件表单 /title /head body h1 Let s get in touch! /h1 ?php if (!empty($msg)) { echo h2 $msg /h2 form method= POST label for= name 名称: input type= text name= name id= name /label br br label for= email 电子邮件: input type= email name= email id= email /label br br label for= message 消息: textarea name= message id= message rows= 8 cols= 20 /textarea /label br br input type= submit value= 发送 /form /body /html
最终结果是:
一旦用户提交了他的消息,他将得到确认,内容将到达addAddress 字段中输入的电子邮箱 。
专业提示:如果PHPMailer联系表单不起作用,请添加以下行以查看导致该问题的原因: $ mail- SMTPDebug = 2;
一旦完成,不要忘记将其删除或设置为零!
以上就是php如何发送电子邮件?使用PHPMailer实现的详细内容,PHP教程
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答