使用PHP 的SwiftMailer 透過Gmail 發送電子郵件
嘗試使用具有Gmail 帳戶的SwiftMailer 向自身發送電子郵件時出現此問題。根據SwiftMailer的參考對腳本進行了修改,但沒有得到任何結果。
問題源自於以下行:
<code class="php">$result = $mailer->send($message);</code>
這行導致程式碼失敗,表示有問題發送訊息。可能是訊息沒有發送成功,導致程式崩潰。
腳本程式碼如下:
<code class="php">require_once '/var/www/swift/lib/swift_required.php'; echo 'Mail sent <br />'; $transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 587) ->setUsername('example@gmail.com') ->setPassword('password'); echo 'line 40 <br />'; $mailer = Swift_Mailer::newInstance($transport); $message = Swift_Message::newInstance('Wonderful Subject') ->setFrom(array('example@gmail.com' => 'Evaluaciones')) ->setTo(array('example@gmail.com' => 'A name')) ->setBody('Test Message Body'); echo 'line 52 <br />'; $result = $mailer->send($message); echo $result; echo 'line 58 <br />';</code>
為了解決這個問題,程式碼修改為如下:
<code class="php">$transporter = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl') ->setUsername($this->username) ->setPassword($this->password); $this->mailer = Swift_Mailer::newInstance($transporter);</code>
這解決了問題,允許訊息成功傳送。
以上是為什麼我的 SwiftMailer 腳本無法透過 Gmail 傳送電子郵件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!