Home > Backend Development > PHP Tutorial > ThinkPHP uses PHPMailer to send emails_PHP tutorial

ThinkPHP uses PHPMailer to send emails_PHP tutorial

WBOY
Release: 2016-07-20 11:16:23
Original
982 people have browsed it

This article uses ThinkPHP version 2.1 and PHPMailer version 5.1. (The latter is recommended that you download it directly from this blog, because we cannot guarantee that the following code will run normally in all versions of PHPMailer)
The following are the specific steps:
The first step, add the PHPMailer class library

PHPMailer email sending class V5.1 download address

Extract the downloaded file and move the PHPMail directory to the Vendor in the ThinkPHP directory. (Please make sure that the class.phpmailer.php file is in ThinkPHPVendorPHPMailerclass.phpmailer.php)
The second step is to add the send mail function
The common.php file in the Common folder in the project directory (please create it if it does not exist) )Add the following code:

<?<span php
</span><span /*</span><span *********
* 发送邮件 *</span>
Copy after login
<span * by www.jbxue.com</span>
Copy after login
<span *********</span><span */</span>
Copy after login
<em id="__mceDel"><span function</span> SendMail(<span $address</span>,<span $title</span>,<span $message</span><span )
{
vendor(</span>'PHPMailer.class#PHPMailer'<span );
</span><span $mail</span>=<span new</span><span  PHPMailer();
</span><span //</span><span  设置PHPMailer使用SMTP服务器发送Email</span>
<span $mail</span>-><span IsSMTP();
</span><span //</span><span  设置邮件的字符编码,若不指定,则为'UTF-8'</span>
<span $mail</span>->CharSet='UTF-8'<span ;
</span><span //</span><span  添加收件人地址,可以多次使用来添加多个收件人</span>
<span $mail</span>->AddAddress(<span $address</span><span );
</span><span //</span><span  设置邮件正文</span>
<span $mail</span>->Body=<span $message</span><span ;
</span><span //</span><span  设置邮件头的From字段。</span>
<span $mail</span>->From=C('MAIL_ADDRESS'<span );
</span><span //</span><span  设置发件人名字</span>
<span $mail</span>->FromName='LilyRecruit'<span ;
</span><span //</span><span  设置邮件标题</span>
<span $mail</span>->Subject=<span $title</span><span ;
</span><span //</span><span  设置SMTP服务器。</span>
<span $mail</span>->Host=C('MAIL_SMTP'<span );
</span><span //</span><span  设置为&ldquo;需要验证&rdquo;</span>
<span $mail</span>->SMTPAuth=<span true</span><span ;
</span><span //</span><span  设置用户名和密码。</span>
<span $mail</span>->Username=C('MAIL_LOGINNAME'<span );
</span><span $mail</span>->Password=C('MAIL_PASSWORD'<span );
</span><span //</span><span  发送邮件。</span>
<span return</span>(<span $mail</span>-><span Send());
}
</span>?></em>
Copy after login

Edit config.php in the Conf directory and add the following content in the return array

<?<span php
</span>'MAIL_ADDRESS'=>'xxx@126.com', <span //</span><span  邮箱地址</span>
'MAIL_SMTP'=>'smtp.126.com', <span //</span><span  邮箱SMTP服务器</span>
'MAIL_LOGINNAME'=>'xxx', <span //</span><span  邮箱登录帐号</span>
'MAIL_PASSWORD'=>'xxx', <span //</span><span  邮箱密码</span>
Copy after login

The fourth step is to send an email in Action
Since ThinkPHP will automatically load the functions in common.php, when you need to send an email, you only need to use the following code.
SendMail("xxx@xxx.com","Email title","Email text");
At this point, this tutorial has ended. Spread flowers~~~
Welcome students who have successfully configured SendMail("dreamrunner@foxmail.com","I can also use ThinkPHP to send emails","Wow wow~~");
There are also some instructions
What should I do if I need to wrap the line in the email body? In fact, the simplest method is -
SendMail("xxx@xxx.com", "Email title", "Email text
I changed the line~~!");
QQ mailbox (including foxmail ) and NetEase's 126 and 163 were tested successfully. Because it has been difficult to access GMail recently, I did not test it. I heard that GMail requires the use of SSL. Students who need it can Google Baidu PHPMailer on their own.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/440114.htmlTechArticleThis article uses ThinkPHP version 2.1 and PHPMailer version 5.1. (The latter is recommended that you download it directly from this blog, because we cannot guarantee that the following code will work properly in all versions of PHPMailer...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template