网站首页 文章专栏 发送邮件方法
打开网址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; }
转载请注明出处