thinkphp5 使用163邮箱smtp发送邮件教程
两种方法:
使用composer安装phpmailer
composer require phpmailer/phpmailer
或者直接下载phpmailer:http://www.thinkphp.cn/code/download/id/3203.html
composer安装太慢,我使用了直接下载的方法,下载后直接放置在extend解压
然后在common了写一个函数
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
//发送邮件
function email()
{
$mail = new PHPMailer(true);
try {
// 服务器设置
$mail->SMTPDebug = 2; // 开启Debug
$mail->isSMTP(); // 使用SMTP
$mail->Host = 'smtp.163.com'; // 服务器地址
$mail->SMTPAuth = true; // 开启SMTP验证
$mail->Username = 'my@163.com'; // SMTP 用户名(你要使用的邮件发送账号)
$mail->Password = ''; // SMTP 密码
$mail->SMTPSecure = 'ssl'; // 开启TLS 可选
$mail->Port = 465; // 端口
// 收件人
$mail->setFrom('my@163.com'); // 来自
//$mail->addAddress('395696661@qq.com'); // 添加一个收件人
$mail->addAddress('1006950486@qq.com'); // 可以只传邮箱地址
// 内容
$mail->isHTML(true); // 设置邮件格式为HTML
$mail->Subject = '浪博游戏'; //邮件主题
$mail->Body = '浪博游戏是中国最领先的游戏平台'; //邮件内容
$mail->send();
echo '邮件发送成功。<br>';
} catch (Exception $e) {
echo '邮件发送失败。<br>';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
}
然后直接在控制器中调用即可,具体业务自己在结合修改函数,记得开启php.ini里的openssl