溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ThinkPHP中如何發(fā)送郵件

發(fā)布時(shí)間:2021-06-23 16:49:08 來(lái)源:億速云 閱讀:248 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

今天就跟大家聊聊有關(guān)ThinkPHP中如何發(fā)送郵件,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

將下載的PHPMailer放在ThinkPHP/Library/Vendor目錄下

ThinkPHP中如何發(fā)送郵件    

在config.php下添加郵件發(fā)送配置信息

ThinkPHP中如何發(fā)送郵件    

在Common/function.php下編寫(xiě)mailSend(array $mailInfo)函數(shù)

/**
 * 郵件發(fā)送,可以多圖片,多附件發(fā)送
 * @param $mailInfo $mailInfo = array(   //二維數(shù)組
 *    'address' => 'xx@xx.com', //收件人郵箱
 *    'subject' => '這里是郵件主題',
 *    'body' => "<h3>你好</h3>&nbsp;這是一個(gè)郵件,
 *      <a href='#'>http://www.test.com</a>
 *      <hr><img alt='這是一張圖片' src='cid:test_id1'>",//圖片src對(duì)應(yīng)圖片標(biāo)識(shí)
 *    'img' => array(
 *    'path' => 'test/1.jpg', //可以使用相對(duì)路徑
 *    'cid' => 'test_id1', //附件內(nèi)容標(biāo)識(shí)
 *    'name' => '1.jpg'
 *    ),
 *    'attachment'=> array(
 *    'path' => 'text/text.txt',
 *    'name' => '附件.txt'
 *    ),
 *   );
 * @return bool
 * @throws Exception
 * @throws phpmailerException
 */
function mailSend($mailInfo){
 //date_default_timezone_set('Asia/Shanghai');//設(shè)置時(shí)區(qū)
 vendor('PHPMailer.class#phpmailer');
 $mail = new \PHPMailer();
 $mailConfig = C('MAIL_CONF');//獲取mail配置
 //dump($mailConfig);exit;
 //配置項(xiàng)
 $mail->isSMTP();
 $mail->Host = $mailConfig['MAIL_HOST'];
 $mail->Port = $mailConfig['MAIL_PORT'];//端口
 $mail->SMTPAuth = $mailConfig['MAIL_SMTPAUTH'];//啟用SMTP認(rèn)證
 $mail->CharSet = $mailConfig['MAIL_CHARSET'];
 $mail->Encoding = $mailConfig['MAIL_ENCODING'];
 $mail->Username = $mailConfig['MAIL_NAME']; //發(fā)送郵箱
 $mail->Password = $mailConfig['MAIL_PWD'];
 $mail->FromName = $mailConfig['MAIL_FROMNAME']; //發(fā)件人名字
 //內(nèi)容
 $mail->addAddress($mailInfo['address']);//收件人郵箱
 $mail->Subject = $mailInfo['subject']; //郵件主題
 //圖片以及附件
 $mail->isHTML(true); //支持html格式內(nèi)容

 //最后一個(gè)參數(shù)可不寫(xiě),默認(rèn)為原文件名
 $mail->addEmbeddedImage($mailInfo['img']['path'],$mailInfo['img']['cid'],$mailInfo['img']['name']);//圖片路徑,圖片cid,圖片名稱
 $mail->addAttachment($mailInfo['attachment']['path'],$mailInfo['attachment']['name']);//添加附件,并指定名稱
 //郵件主體
 $mail->Body = $mailInfo['body'];//發(fā)送
 return $mail->send()?true:false;
}

看完上述內(nèi)容,你們對(duì)ThinkPHP中如何發(fā)送郵件有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI