電子郵件仍然是網絡通信中不可或缺的一部分,而圖文結合的HTML郵件越來越受歡迎。本文將為您講解如何借助PHPMailer庫,在PHP中發送帶有嵌入圖片的HTML郵件。
首先,確保項目中已經安裝了PHPMailer。你可以使用Composer進行安裝,只需在項目根目錄的composer.json
中添加以下依賴項:
"require": {
"phpmailer/phpmailer": "~6.0"
}
安裝完成後,PHPMailer將被自動加載,可以直接引用使用。
以下是一個完整的示例代碼,展示如何配置SMTP服務器、設置郵件內容以及嵌入圖片:
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
// 服務器設置與身份驗證
$mail->SMTPDebug = 0;
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'your-email@example.com';
$mail->Password = 'your-email-password';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// 發件人與收件人
$mail->setFrom('your-email@example.com', 'Your Name');
$mail->addAddress('recipient@example.com', 'Recipient Name');
// 郵件內容
$mail->isHTML(true);
$mail->Subject = '這是一封帶有圖片的HTML郵件';
$mail->Body = '
<h1>Hello World!</h1>
<p>這是一封帶有圖片的HTML郵件。<br>
圖片示例:<br>
<img src="cid:image1" alt="Image" style="max-width:90%">
</p>';
// 嵌入本地圖片
$mail->AddEmbeddedImage('/path/to/image.jpg', 'image1');
// 发送郵件
$mail->send();
echo '郵件发送成功!';
} catch (Exception $e) {
echo '郵件发送失败:' . $mail->ErrorInfo;
}
上面的代碼演示了發送HTML格式郵件的流程:
isHTML(true)
方法開啟HTML格式支持,使郵件正文支持HTML標籤。AddEmbeddedImage
方法嵌入本地圖片,通過設置cid
值在HTML中進行引用。<img src="cid:image1">
標籤來展示嵌入的圖片。發送圖文郵件時,請注意以下幾點:
通過PHP與PHPMailer結合使用,開發者可以快速實現發送包含圖文的HTML郵件功能。該方式不僅能提升郵件的視覺表現,也有助於提高郵件的閱讀率和專業性。只需按照步驟配置好SMTP、撰寫HTML內容並正確嵌入圖片,即可實現圖文並茂的郵件發送。