感谢你来到这里
我真的很激动
盼望,能有你的支持
捐赠可扫描二维码转账支付
支付宝扫一扫付款
微信扫一扫付款
(微信为保护隐私,不显示你的昵称)
在开发过程中,若不使用常规的SMTP服务器来发邮件的话,你可能会发现使用Gmail服务器是更为简单的实践方案。SwiftmailerBundle令Gmail邮件发送相当容易。
在开发版配置文件中,修改transport
选项,将其设为gmail
,然后将username
和password
设置为Google账号凭据:
1 2 3 4 5 | # app/config/config_dev.yml
swiftmailer:
transport: gmail
username: your_gmail_username
password: your_gmail_password |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <!-- app/config/config_dev.xml -->
<?xml version="1.0" encoding="UTF-8" ?>
<container xmlns="http://symfony.com/schema/dic/services"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:swiftmailer="http://symfony.com/schema/dic/swiftmailer"
xsi:schemaLocation="http://symfony.com/schema/dic/services
http://symfony.com/schema/dic/services/services-1.0.xsd
http://symfony.com/schema/dic/swiftmailer
http://symfony.com/schema/dic/swiftmailer/swiftmailer-1.0.xsd">
<!-- ... -->
<swiftmailer:config
transport="gmail"
username="your_gmail_username"
password="your_gmail_password"
/>
</container> |
1 2 3 4 5 6 | // app/config/config_dev.php
$container->loadFromExtension('swiftmailer', array(
'transport' => 'gmail',
'username' => 'your_gmail_username',
'password' => 'your_gmail_password',
)); |
把这些选项配置到parameters.yml
中则更为简便:
1 2 3 4 5 | # app/config/parameters.yml
parameters:
# ...
mailer_user: your_gmail_username
mailer_password: your_gmail_password |
1 2 3 4 5 | # app/config/config_dev.yml
swiftmailer:
transport: gmail
username: "%mailer_user%"
password: "%mailer_password%" |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <!-- app/config/config_dev.xml -->
<?xml version="1.0" encoding="UTF-8" ?>
<container xmlns="http://symfony.com/schema/dic/services"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:swiftmailer="http://symfony.com/schema/dic/swiftmailer"
xsi:schemaLocation="http://symfony.com/schema/dic/services
http://symfony.com/schema/dic/services/services-1.0.xsd
http://symfony.com/schema/dic/swiftmailer
http://symfony.com/schema/dic/swiftmailer/swiftmailer-1.0.xsd">
<!-- ... -->
<swiftmailer:config
transport="gmail"
username="%mailer_user%"
password="%mailer_password%"
/>
</container> |
1 2 3 4 5 6 | // app/config/config_dev.php
$container->loadFromExtension('swiftmailer', array(
'transport' => 'gmail',
'username' => '%mailer_user%',
'password' => '%mailer_password%',
)); |
gmail
transport是一个简化的快捷方式,它使用了smtp
传输方式,并且设置了如下选项:
Option | Value |
---|---|
encryption |
ssl |
auth_mode |
login |
host |
smtp.gmail.com |
如果你的程序使用了tls
加密或oauth
验证方式,你必须通过encryption
和auth_mode
参数来覆写默认选项。
如果你的Gmail账户使用了“二步验证”(2-Step-Verification),你必须生成一个App密码,然后使用它作为mailer_password
参数的值。你必须确保允许不安全程序访问你的Gmail账号。
本文,包括例程代码在内,采用的是 Creative Commons BY-SA 3.0 创作共用授权。