thinkphp发送邮件需要开启什么设置

thinkphp发送邮件需要开启什么设置

邮件配置
'THINK_EMAIL' => array(
'SMTP_HOST' => 'smtp.163.com', //SMTP服务器
'SMTP_PORT' => '465', //SMTP服务器端口
'SMTP_USER' => 'ihtxt@163.com', //SMTP服务器用户名
'SMTP_PASS' => 'ihtxt.com', //SMTP服务器密码
'FROM_EMAIL' => 'ihtxt@163.com', //发件人EMAIL
'FROM_NAME' => '爱红电子书', //发件人名称
'REPLY_EMAIL' => 'ihtxt@163.com', //回复EMAIL(留空则为发件人EMAIL)
'REPLY_NAME' => '爱红电子书', //回复名称(留空则为发件人名称)
),
注:推荐使用163邮件,不要使用QQ邮箱,邮件配置一定要正确
可以将该函数放到ThinkPHPCommoncommon.php。也可以放到你生成的项目文件的Commoncommon.php。不过只能放到一个地方,否则就会报函数重定义错误。

function think_send_mail($to, $name, $subject = '', $body = '', $attachment = null){
$config = C('THINK_EMAIL');
vendor('PHPMailer.class#phpmailer'); //从PHPMailer目录导class.phpmailer.php类文件
$mail = new PHPMailer(); //PHPMailer对象
$mail->CharSet = 'UTF-8'; //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
$mail->IsSMTP(); // 设定使用SMTP服务
$mail->SMTPDebug = 0; // 关闭SMTP调试功能
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // 启用 SMTP 验证功能
$mail->SMTPSecure = 'ssl'; // 使用安全协议
$mail->Host = $config['SMTP_HOST']; // SMTP 服务器
$mail->Port = $config['SMTP_PORT']; // SMTP服务器的端口号
$mail->Username = $config['SMTP_USER']; // SMTP服务器用户名
$mail->Password = $config['SMTP_PASS']; // SMTP服务器密码
$mail->SetFrom($config['FROM_EMAIL'], $config['FROM_NAME']);
$replyEmail = $config['REPLY_EMAIL']?$config['REPLY_EMAIL']:$config['FROM_EMAIL'];
$replyName = $config['REPLY_NAME']?$config['REPLY_NAME']:$config['FROM_NAME'];
$mail->AddReplyTo($replyEmail, $replyName);
$mail->Subject = $subject;
$mail->AltBody = "为了查看该邮件,请切换到支持 HTML 的邮件客户端";

$mail->MsgHTML($body);
$mail->AddAddress($to, $name);
if(is_array($attachment)){ // 添加附件
foreach ($attachment as $file){
is_file($file) && $mail->AddAttachment($file);
}
}
return $mail->Send() ? true : $mail->ErrorInfo;
}
$r = think_send_mail('要发送的邮箱','发送人名称,即你的名称','文件标题','邮件内容');
windows下在php.ini中去掉下面的分号
extension=php_openssl.dll
并将allow_url_fopen = Off改为
allow_url_fopen = On

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114271.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 渗透测试笔记汇总_渗透测试怎么做

    渗透测试笔记汇总_渗透测试怎么做【拿shell】1.直接上传aspasajspcerphpaspxhtrcdx格式的木马,不行就利用IIS6.0解析漏洞”:1.asp;1.jpg/1.asp;.jpg/1.asp;jpg/1.asp;.xls2.上传图片木马遇到拦截系统,连图片木马都上传不了,记事本打开图片木马在代码最前面加上gif89a,一般就能逃过拦截系统了。3.上传图片木马把地址复制到数据库…

    2022年9月21日
    10
  • SAGA GIS_GOSAT卫星数据下载

    SAGA GIS_GOSAT卫星数据下载官网:SAGA-SystemforAutomatedGeoscientificAnalyseshttps://saga-gis.sourceforge.io/en/index.html点击下载按钮点击后等几秒即可下载下载时间过长

    2025年12月4日
    4
  • smalldatetime数据类型「建议收藏」

    smalldatetime数据类型「建议收藏」smalldatetime共需要4个字节,其中两个字节表示1900-1-1之后的所有天数,另外两个字节表示午夜后一分钟为单位的时间,支持范围从1900-1-1到2079-6-6转载于:https://www.cnblogs.com/Junelee1211/archive/2011/07/08/2100694.html…

    2022年5月19日
    35
  • mac os+selenium2+chrome驱动+python3

    mac os+selenium2+chrome驱动+python3macos10.11.5+python3安装selenium过程详解(附截图),难点在chrome驱动安装,以及第一个selenium自动化脚本

    2022年6月29日
    32
  • GG修改器怎么激活成功教程游戏保护_gg修改器游戏保护修改不了怎么办

    GG修改器怎么激活成功教程游戏保护_gg修改器游戏保护修改不了怎么办今天阿森给大家发一个GG修改器的教程,很多朋友遇到一些脚本程序不知道怎么样使用!今天就给大家发一个详细的!GG修改器使用脚本超详细图文教程讲解一,框架是什么我们使用gg修改器的话,就需要用到root,但是,并不是所有人都会去root,所以这个时候框架就出现了,框架的话相当于给了gg修改器一个root权限二,脚本是什么脚本简单地说就是一条条的文字命令,这些文字命令是可以看到的(如可以用记事…

    2025年9月12日
    4
  • 笑谈.Net的开发境界

    笑谈.Net的开发境界

    2021年7月25日
    71

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号