600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 【Thinkphp 5】 整合邮箱类 phpmailer实现邮件发送

【Thinkphp 5】 整合邮箱类 phpmailer实现邮件发送

时间:2021-08-17 22:27:19

相关推荐

【Thinkphp 5】 整合邮箱类 phpmailer实现邮件发送

第一步:下载phpmailer文件,主要用到的文件只有箭头指向的两个,thinkphp5中,把class.phpmailer.php改成了phpmailer.php

第二步: 将phpmailer文件夹放到extend扩展类库目录(可定义)中

第三步:打开phpmailer.php 和 class.smtp.php文件,最前面加上命名空间(TP5 必须要加上命名空间)

namespace phpmailer; //phpmailer 这是文件夹的名称

第四步:控制器中可以直接调用,调用前需要先引入phpmailer库文件

1 use phpmailer\phpmailer; //引入extend/phpmailer中的phpmailer.php邮件发送类文件

由于邮箱发送可以多个地方多次调用,我就把他封装到common.php公共应用方法中

common.php文件内容如下

1 use phpmailer\phpmailer; //引入extend中的邮件发送类文件 2 // 应用公共文件 3 4 /** 5 * @param $sjr 收件人 6 * @param $title 标题 7 * @param $content 邮件内容 8 * 9 * @throws \phpmailer\phpmailerException10 */11 function sendEmail($sjr,$title,$content){ 12 13try {14 $mail = new PHPMailer(true);15 $mail->IsSMTP(); // 设定使用SMTP服务,SMTP简单邮件传输协议16 17 $mail->CharSet='UTF-8'; //设置邮件的字符编码,这很重要,不然中文乱码18 $mail->SMTPAuth = true; //开启认证19 $mail->Port = 25; // SMTP服务器的端口号20 $mail->Host = ""; // SMTP 服务器21 $mail->Username = "cj392085780@"; //SMTP服务器用户名,邮箱号22 $mail->Password = "11111111111";//SMTP服务器密码 授权码23 //$mail->IsSendmail(); //如果没有sendmail组件就注释掉,否则出现“Could not execute: /var/qmail/bin/sendmail ”的错误提示24 25 $mail->AddReplyTo("cj372835766@","这里输入回复邮件内容");//回复地址(收件人回复。发件人可以看到回复信息) 第一个参数是发件人邮箱,第二个为快捷回复的内容26 $mail->FromName = "八神网络"; //发件人的名称27 $mail->From = "cj392085780@"; //发件人邮箱28 29 $to = $sjr; //收件人地址30 $mail->AddAddress($to);31 $mail->Subject = $title; //邮件标题32 $mail->Body = $content; //邮件内容33 $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; //当邮件不支持html时备用显示,可以省略34 $mail->WordWrap = 80; // 设置每行字符串的长度35 //$mail->AddAttachment("f:/test.png"); //可以添加附件36 $mail->IsHTML(true);37 38 $mail->Send(); //发送邮件39 echo "邮件发送成功";40 //return 1; //发送成功 输出141} catch (phpmailerException $e) {42 echo "邮件发送失败:".$e->errorMessage();43}44 }

控制器中调用common.php中的方法实现邮箱发送

1 public function index() 2{ 3 $sjr='392085780@'; 4 $title='tp5邮箱发送'; 5 $content='你好啊'; 6 $result=sendEmail($sjr,$title,$content); //调用common.php的方法发送邮件 7 //if($result==1){ 8 // $this->success('邮件发送成功'); 9 //}10}

主要注意的是phpmailer.php文件最后 Exception前加一个\ 就 OK 了 ,希望对大家有帮助

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。