PHPMailer实现发送邮件

PHP 182 0 2024-07-23

PHPMailer实现发送邮件

安装PHPMailer,命令运行:

composer require phpmailer/phpmailer


实现代码如下:

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

class Email
{
    public static function send($to, $subject, $body)
    {
        $res = ["code" => 0, "msg" => "err"];
        if (!filter_var($to, FILTER_VALIDATE_EMAIL)) {
            $res['msg'] = '邮箱格式错误';
        } elseif (trim($subject) == '') {
            $res['msg'] = '邮件主题不能为空';
        } else {
            $mail = new PHPMailer(true);
            try {
                // 服务器设置
                //$mail->SMTPDebug = 2; // 启用详细调试输出
                $mail->isSMTP(); // 启用 SMTP
                $mail->Host = 'smtp.hilo8.com'; // SMTP 服务器地址
                $mail->SMTPAuth = true; // 启用 SMTP 认证
                $mail->Username = 'system@hilo8.com'; // SMTP 用户名(通常是你的邮箱地址)
                $mail->Password = 'ZnsUA48tmJrCjDEE'; // SMTP 密码
                $mail->SMTPSecure = 'tls'; // 启用 TLS 加密,`ssl` 也可用
                $mail->Port = 587; // SMTP 端口,通常是 587 或 465(对于 ssl)

                // 收件人
                $mail->setFrom('system@hilo8.com', '系统邮件'); // 发件人邮箱和名称
                $mail->addAddress($to); // 收件人邮箱和名称

                // 内容
                $mail->isHTML(true); // 设置邮件格式为 HTML
                $mail->Subject = $subject;
                $mail->Body    = $body;

                // 发送邮件
                $mail->send();
                $res['code'] = 1;
                $res['msg'] = '邮件发送成功';
            } catch (Exception $e) {
                $res['msg'] = $e->getMessage();
            }
        }
        return $res;
    }
}


调用:

$to = 'service@hilo8.com';
$subject = '有新任务安排,请及时查看';
$body = '<div>明天有重要客户来访,请做好接待准备。</div>';';
$res = Email::send($to, $subject, $body);


上一篇:PHP RSA实现公/私钥的加密、解密、签名

下一篇:PHP MQTT client客户端连接订阅/发布消息

讨论数量:0

请先登录再发表讨论。 2024-10-18

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链