PHP 上郵件函數將電子郵件傳送到垃圾郵件的疑難排解
透過PHP 的郵件() 函數傳送電子郵件時,它們經常會進入垃圾郵件資料夾。要解決這個問題,我們必須了解根本問題。
解決這個問題的關鍵在於mail()函數沒有使用配置良好的SMTP伺服器。例如:
$ticketDetail is an array containing pertinent information for transmission. sendOwnershipEmail('[email protected]', $ticketDetail); function sendOwnershipEmail($email, $ticketDetail) { $param = new stdClass(); $param->content = "<div> <div><b>".$ticketDetail[0]['ticket_number']."</b></div><br/> <div><img src='".$ticketDetail[0]['image_path']."'/></div><br/> <div>Ticket with ticket number ".$ticketDetail[0]['ticket_number']." has been requested for tranfer from <div/> <div>".$ticketDetail[0]['oldDepartment']." to ".$ticketDetail[0]['newDepartment']." Department <div/> </div>"; $param->sendTo = $email; $param->subject = "Request for Department transfer"; sendMailFunction($param); } function sendMailFunction($param) { $to = $param->sendTo; $subject = $param->subject; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From: [email protected]' . "\r\n"; $message = "<html><head>" . "<meta http-equiv='Content-Language' content='en-us'>" . "<meta http-equiv='Content-Type' content='text/html; charset=windows-1252'>" . "</head><body>" .$param->content. "<br><br></body></html>"; mail($to, $subject, $message, $headers); }
解決方案
SMTP 伺服器:PHP 的 mail() 函數依賴伺服器來傳送電子郵件,而伺服器可能沒有正確配置。使用 PHPMailer 並將其配置為與專用 SMTP 伺服器結合使用 SMTP 驗證將緩解此問題。
PHPMailer 函式庫:PHPMailer 函式庫是一個專門用來傳送電子郵件的開源 PHP 函式庫。它提供各種功能,包括處理 SMTP 身份驗證。將 PHPMailer 與您的程式碼整合將使您能夠配置專用的 SMTP 伺服器,這將解決該問題。
以上是為什麼我的 PHP `mail()` 函數電子郵件最終會進入垃圾郵件資料夾?的詳細內容。更多資訊請關注PHP中文網其他相關文章!