ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
`php=>7.3.*` `thinkphp=>5.1.*` `这个功能可能会导致苹果手机appid被盗,因为是邮箱。请注意避免用注册appid的邮箱来作为客户端邮箱` ### 第1步:开启IMAP/SMTP服务,并获取QQ邮箱授权码 ![](https://img.kancloud.cn/4e/11/4e1106b794af1f2581d42117c4862719_1603x210.png) ![](https://img.kancloud.cn/5c/da/5cda84aef92c345226f22c3d30e675ca_1735x215.png) ![](https://img.kancloud.cn/5f/34/5f345a2f06b7de8bf051255429b4f81f_975x262.png) ![](https://img.kancloud.cn/bf/37/bf37ebd229620b4ef3669df794ff3ebf_942x268.png) ![](https://img.kancloud.cn/1d/0e/1d0ef4be5ecbd639b0ef50f28f5a7542_1107x466.png) ![](https://img.kancloud.cn/a6/56/a6560c4cb68833436d8a020e6e3dea23_1072x466.png) ### 第2步:composer 安装 ``` composer require phpmailer/phpmailer ``` ### 第3步:封装成函数或类库,这里封装成函数 ``` function send_mail($tomail, $name, $subject = '', $body = '', $attachment = null) { $mail = new \PHPMailer\PHPMailer\PHPMailer(); //实例化PHPMailer对象 $mail->CharSet = 'UTF-8'; //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码 $mail->IsSMTP(); // 设定使用SMTP服务 $mail->SMTPDebug = 1; // SMTP调试功能 0=关闭 1 = 错误和消息 2 = 消息 $mail->SMTPAuth = true; // 启用 SMTP 验证功能 $mail->SMTPSecure = 'ssl'; // 使用安全协议 $mail->Host = "smtp.qq.com"; // SMTP 服务器 $mail->Port = 465; // SMTP服务器的端口号 $mail->Username = "第一步获取授权码的邮箱"; // SMTP服务器用户名 $mail->Password = "第一步获取的授权码"; // SMTP服务器密码 $mail->SetFrom('第一步获取授权码的邮箱', '54skyer'); $replyEmail = '第一步获取授权码的邮箱'; //留空则为发件人EMAIL $replyName = '54skyer'; //回复名称(留空则为发件人名称) $mail->AddReplyTo($replyEmail, $replyName); $mail->Subject = $subject; $mail->MsgHTML($body); $mail->AddAddress($tomail, $name); if (is_array($attachment)) { // 添加附件 foreach ($attachment as $file) { is_file($file) && $mail->AddAttachment($file); } } return $mail->Send() ? true : $mail->ErrorInfo; } ``` ### 第4步:发送邮件 ``` public function email(){ $toemail='405661806@qq.com'; $name='小张'; $subject='QQ邮件发送测试'; $content='恭喜你,邮件测试成功。'; dump(send_mail($toemail,$name,$subject,$content)); } ``` `2019/10/19 亲测有效`