首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用gmail的Swiftmailer

使用gmail的Swiftmailer
EN

Stack Overflow用户
提问于 2014-10-17 09:13:17
回答 1查看 2.1K关注 0票数 4

因此,我尝试使用swiftmailer通过gmail帐户发送电子邮件。我知道有一些问题可以解决这个问题,但没有一个提出的解决方案对我有帮助。我的问题是,当我运行我的代码时,我得到"PHP致命错误:未捕获异常'Swift_TransportException‘,消息’预期响应代码250,但得到代码"535",消息"535-5.7.8用户名和密码未接受“。我知道我的密码和用户名是正确的,并且谷歌两步验证没有启用。这是我的代码:

注册表'vendor/swiftmailer/swiftmailer/lib/classes/Swift.php';require_once::registerAutoload();

代码语言:javascript
复制
require_once 'vendor/swiftmailer/swiftmailer/lib/swift_required.php';
require_once 'vendor/swiftmailer/swiftmailer/lib/swift_init.php';

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 587, 'tls')
    ->setUsername ('myemail@gmail.com')
    ->setPassword ('mypassword');

$mailer = Swift_Mailer::newInstance($transport);    

$message = Swift_Message::newInstance('Weekly Hours')
    ->setFrom (array('myemail@gmail.com' => 'My Name'))
    ->setTo (array('recipient@hotmail.com' => 'Recipient'))
    ->setSubject ('Weekly Hours')
    ->setBody ($data, 'text/html');

$result = $mailer->send($message);

请注意,我还尝试了使用'lss‘加密的端口465。提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-04-29 15:07:09

这个问题可能与谷歌可以使用一系列IP地址的事实有关。

在我的例子中,我用这样的东西解决了这个问题:

代码语言:javascript
复制
 #get the host dynamically
 $smtp_host_ip = gethostbyname('smtp.gmail.com');

 #set the transport
 $transport = Swift_SmtpTransport::newInstance($smtp_host_ip,465,'ssl')->setUsername('myemail@gmail.com')->setPassword('mypassword');

我希望它能帮上忙。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26416410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档