namespace common;
use PHPMailer\PHPMailer\PHPMailer;
/**
* composer require phpmailer/phpmailer
* 发送邮箱验证码
*/
class SendEmail
{
private static $from_url = '';
private static $from_name = '';
private static $host = 'smtp.qq.com';
private static $port = '25';
private static $smtp_secure = '';
private static $username = '';
private static $password = '';
/**
* 发送邮件
* @author ybzai
* @param string $address 收件人邮箱
* @param string $subject 邮件标题
* @param string $message 邮件内容
* @return array<br>
* 返回格式:<br>
* array(<br>
* "error"=>0|1,//0代表出错<br>
* "message"=> "出错信息"<br>
* );
*/
public static function sendEmailVcode($address, $subject, $message)
{
$mail = new PHPMailer();
// 设置PHPMailer使用SMTP服务器发送Email
$mail->IsSMTP();
$mail->IsHTML(true);
//$mail->SMTPDebug = 2;
// 设置邮件的字符编码,若不指定,则为'UTF-8'
$mail->CharSet = 'UTF-8';
// 添加收件人地址,可以多次使用来添加多个收件人
$mail->AddAddress($address);
// 设置邮件正文
$mail->Body = $message;
// 设置邮箱地址。
$mail->From = self::$from_url;
// 设置发件人名字
$mail->FromName = self::$from_name;
// 设置邮件标题
$mail->Subject = $subject;
// 设置SMTP服务器。
$mail->Host = self::$host;
//by Rainfer
// 设置SMTPSecure。
$Secure = self::$smtp_secure;
$mail->SMTPSecure = empty($Secure) ? '' : $Secure;
// 设置SMTP服务器端口。
$port = self::$port;
$mail->Port = empty($port) ? "25" : $port;
// 设置为"需要验证"
$mail->SMTPAuth = true;
$mail->SMTPAutoTLS = false;
$mail->Timeout = 10;
// 设置用户名和密码。
$mail->Username = self::$username;
$mail->Password = self::$password;
// 发送邮件。
if (!$mail->Send()) {
$mailError = $mail->ErrorInfo;
return ["error" => 1, "message" => $mailError];
} else {
return ["error" => 0, "message" => "success"];
}
}
}
发送邮件SendEmail类
Writer @ ybzai 2020-03-22 16:26 阅读(1336)