1. 程式人生 > 其它 >PHPmailer 傳送郵件(企業微信為例)

PHPmailer 傳送郵件(企業微信為例)

  1. 安裝
    composer require phpmailer/phpmailer


  2. 程式碼(以企業微信為例,需要注意,伺服器 必須開放 對應《出站埠》)

    <?php
    
    namespace app\libs;
    
    use \PHPMailer\PHPMailer\PHPMailer;
    
    class Send
    {
        public static $err = '';
    
        public function sendEmail($content)
        {
            $mail = new PHPMailer();
            try {
                $mail->SMTPDebug = 0;      //郵件除錯模式
                $mail->isSMTP();           //設定郵件使用SMTP
                $mail->SMTPAuth = true;    //smtp需要鑑權 這個必須是true
    
                $mail->Host = 'ssl://XXXX.XXXX.qq.com'; // 設定郵件程式以使用SMTP
                $mail->SMTPSecure = 'ssl';              // 設定使用ssl加密方式登入鑑權   企業郵箱必須關閉,個人郵箱才需要
                $mail->Port = 465;                      // 企業郵箱伺服器埠號
                $mail->CharSet = 'UTF-8';               // 設定郵件內容的編碼
                $mail->Username = '[email protected]';       // SMTP username
                $mail->Password = 'XXXXXXXX';           // 如何繫結微信 請輸入客戶端專用密碼
    
                $mail->setFrom('XXXXXXX', '提醒');     //設定發件人
    
                $mail->addAddress([email protected]);       //  新增收件人1
                $mail->addAddress([email protected]);       //  新增收件人2
                // $mail->addReplyTo('XXXXX', '提醒'); //收件人回覆的郵箱
    
                $mail->isHTML(true);                  // 將電子郵件格式設定為HTML
                $mail->Subject = '提醒';
                $mail->Body    = $content;
                // $mail->AltBody = '這是非HTML郵件客戶端的純文字';
                if (!$mail->send()) {
                    static::$err = $mail->ErrorInfo;
                    return false;
                }
            } catch (\Throwable $th) {
                static::$err = $th->getMessage();
                return false;
            }
            return true;
        }
    }