网站首页 文章专栏 发送邮件方法

发送邮件方法

编辑时间:2018-08-23 14:10:10 作者:苹果 浏览量:2124


    前言:基于PHPMailer的发送邮件的方法



打开网址https://github.com/PHPMailer/PHPMailer/ 下载PHPMailer,PHPMailer 需要 PHP 的 sockets 扩展支持,而登录 QQ 邮箱 SMTP 服务器则必须通过 SSL 加密的, PHP 还得包含 openssl 的支持。


注意:

使用 phpinfo() 函数查看 socket 和 openssl 扩展信息(wamp server 默认启用了该扩展)。

openssl 如果没有开启请打开php.ini文件进行开启

首先检查php.ini中;extension=php_openssl.dll是否存在, 如果存在的话去掉前面的注释符‘;’, 如果不存在这行,那么添加extension=php_openssl.dll。


所有的主流邮箱都支持 SMTP 协议,但并非所有邮箱都默认开启,您可以在邮箱的设置里面手动开启。

第三方服务在提供了账号和密码之后就可以登录 SMTP 服务器,通过它来控制邮件的中转方式。


/**
 * 发送邮件
 * @DateTime:	2018-08-22 20:19:16
 * @Author:  hbh
 */
function sendEmail($to,$title,$content) {
		//echo !extension_loaded('openssl')?"Not Available":"Available";
		//$to = "18224504462@163.com";
		//$title = '你是谁';
		//$content = '你是谁?收到请回复';
		// 引入PHPMailer的核心文件
		Vendor('PHPMailer.PHPMailer');
		Vendor('PHPMailer.SMTP');
		$mail = new \PHPMailer(); //实例化
		// 是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式
		$mail->SMTPDebug = 0;

		$mail->IsSMTP(); // 启用SMTP
		$mail->Host = C('MAIL_HOST'); //smtp服务器的名称(这里以QQ邮箱为例)
		$mail->SMTPSecure = "ssl"; //目前规定必须使用ssl,非ssl的协议已经不支持了
               $mail-> Port = 465; //端口号
		$mail->SMTPAuth = C('MAIL_SMTPAUTH'); //启用smtp认证
		$mail->Username = C('MAIL_USERNAME'); //你的邮箱名
		$mail->Password = C('MAIL_PASSWORD'); //邮箱密码(授权码)
		$mail->From = C('MAIL_FROM'); //发件人地址(也就是你的邮箱地址)
		$mail->FromName = C('MAIL_FROMNAME'); //发件人姓名
		$mail->AddAddress($to);
		$mail->WordWrap = 50; //设置每行字符长度
		$mail->IsHTML(C('MAIL_ISHTML')); // 是否HTML格式邮件
		$mail->CharSet = C('MAIL_CHARSET'); //设置邮件编码
		$mail->Subject = $title; //邮件主题
		$mail->Body = $content; //邮件内容
		$mail->AltBody = ""; //邮件正文不支持HTML的备用显示
		// 为该邮件添加附件
		//$mail->addAttachment('./example.pdf');
		return $mail->Send() ? true : $mail->ErrorInfo;
}



    出自:何冰华个人网站

    地址:https://www.hebinghua.com/

    转载请注明出处


来说两句吧
最新评论