ThinkPHP5.0之PHPmailer发送邮箱(qq、163)

本文介绍如何在ThinkPHP5框架中使用PHPMailer发送邮件。通过安装配置PHPMailer库,并设置SMTP服务器参数,实现从QQ邮箱发送邮件的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ThinkPHP5.0之PHPmailer发送邮箱(qq、163)

  1. 下载phpmailer, 然后在thinkphp5 目录下的 扩展类库 extend目录下 新建phpmailer目录。
    把你下载的phpmailer里的class.phpmailer.PHP和class.smtp.php文件复制到phpmailer目录下。
    注意:thinkphp5的扩展类的定义是,类文件命名为:phpmailer.php而不是class.phpmailer.php。所以要把class.phpmailer.php重命名为PHPMailer.php。 另一个也是改为SMTP.php。

  2. 开启openssl扩展

  3. 在下载的类里面使用命名空间 name phpmailer;

  4. 在所有模块的公共函数common.php里写一个方法引入类库并实例化邮件类

// 发送邮件
function sendmail($to,$title,$content){
	// 加载发送邮件的扩展类库
	$mail = new \Org\Util\PHPMailer();
	// var_dump($mail);
	// 设置字符集
	$mail->CharSet = "utf-8";
	// 设置采用SMTP方式发送邮件
	$mail->IsSMTP();
	// 设置邮件服务器地址
	$mail->Host = "smtp.qq.com";// qq
	// 设置邮件服务器的端口   163端口25
	$mail->Port = 465;
	// 设置发件人的邮箱地址
	$mail->From = "xxxx@qq.com";
	// 设置发送方名称
	$mail->FromName = 'xxxx';
	// 设置SMTP是否需要密码验证
	$mail->SMTPAuth = true;
	// 发送方
	$mail->Username = "xxx@qq.com";// 发件方邮箱
	// $mail->Password = "xxx";// 163客户端的授权密码
	$mail->Password = "xxx";// qq客户端的授权密码
	 $mail->SMTPSecure = "ssl";// qq才需要使用ssl协议方式,163不需要
	// 发送邮件的主题
	$mail->Subject = $title;
	// 内容类型 文本型
	$mail->AltBody = "text/html";
	// 发送的内容
	$mail->Body = $content;
	// 设置内容是否为html格式
	$mail->IsHTML(true);
	// 设置接收方
	$mail->AddAddress(trim($to));
	if(!$mail->Send()){
		// return false;
		echo "失败".$mail->ErrorInfo;
	}else{
		return true;
	}

5.在控制器中调用公共函数方法

	/**
     * 扩展类库邮件发送类
     */
    public function mail()
    {
        // 直接调用公共邮件发送函数
        $res = sendmail("xxx@163.com", "菜鸟学it", "测试");
        dump($res);
    }
    
  1. 定义路由
	Route::get('/admin/mail', 'admin/Index/mail');
  1. 访问这条路由即能发送邮件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sheliutao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值