在开发过程中如何使用电子邮件吗

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.0,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

在开发过程中如何使用电子邮件吗

在开发应用程序时,发送电子邮件,你会不想实际发送电子邮件到指定的接收方在开发过程中。如果您正在使用Symfony的SwiftmailerBundle,您可以很容易地实现这一ob娱乐下载目标通过配置设置,而无需对应用程序进行任何更改的代码。有两个主要的选择在开发过程中处理邮件时:(a)完全禁用发送电子邮件或(b)发送所有邮件到一个特定的地址(可选的例外)。

禁用发送

您可以禁用发送电子邮件通过设置disable_delivery选项真正的。这是默认的测试环境标准的分布。如果你这样做测试具体配置然后将不发送电子邮件当你运行测试,但将继续发送刺激dev环境:

  • YAML
  • XML
  • PHP
1 2 3
# app / config / config_test.ymlswiftmailer:disable_delivery:真正的

如果你想禁用的dev环境,只需添加相同的配置config_dev.yml文件。

发送到指定的地址

你也可以选择电子邮件发送到一个特定的地址,而不是实际上的地址发送消息时指定。这可以通过完成delivery_address选择:

  • YAML
  • XML
  • PHP
1 2 3
# app / config / config_dev.ymlswiftmailer:delivery_address:“dev@example.com”

现在,假设你发送电子邮件recipient@example.com

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
公共函数indexAction(美元的名字){美元消息= \ Swift_Message::newInstance ()- >setSubject (“你好邮件”)- >setFrom (“send@example.com”)- >该太空站(“recipient@example.com”)- >setBody (美元- >renderView (“HelloBundle:你好:email.txt.twig”,数组(“名字”= >美元的名字)));美元- >get (“梅勒”)- >发送(美元消息);返回美元- >呈现(…);}

dev环境中,电子邮件将被发送到dev@example.com。斯威夫特梅勒将添加一个额外的电子邮件标题,X-Swift-To,包含更换地址,所以你仍然可以看到谁会被送去。

请注意

除了地址,这也将停止发送任何邮件CCBCC地址设置。斯威夫特梅勒将添加额外的头覆盖的电子邮件地址。这些都是X-Swift-CcX-Swift-BccCCBCC地址分别。

发送到指定的地址,但例外

假设你想要所有电子邮件重定向到一个特定的地址,(就像在上面的场景中dev@example.com)。然后你可以邮件发送到一些特定的电子邮件地址通过毕竟,而不是重定向(即使是在开发环境中)。这可以通过添加完成delivery_whitelist选择:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6 7 8
# app / config / config_dev.ymlswiftmailer:delivery_address:dev@example.comdelivery_whitelist:#这些regex将匹配所有电子邮件地址#像正常,以及发送到dev@example.com- - - - - -“美元@specialdomain \ com /”- - - - - -' / ^ admin@mydomain \ com /美元”

在上面的例子中所有邮件将被重定向到dev@example.com和发送的消息admin@mydomain.com地址或任何属于域的电子邮件地址specialdomain.com也将正常交付。

从网上查看调试工具栏

您可以查看任何电子邮件发送在当你在一个响应dev环境使用web调试工具栏。电子邮件工具栏中的图标将显示有多少电子邮件发送。如果你点击它,将打开的一份报告显示的细节发送电子邮件。

如果你发送一封邮件,然后立即重定向到另一个页面,web调试工具栏不显示电子邮件图标或报告在下一个页面上。

相反,你可以设置intercept_redirects选项真正的config_dev.yml文件,该文件将导致重定向到停下来让你打开报告的细节发送电子邮件。

  • YAML
  • XML
  • PHP
1 2 3
# app / config / config_dev.ymlweb_profiler:intercept_redirects:真正的

提示

或者,您可以打开分析器后提交URL重定向和搜索的在前面的请求(如使用。/联系/处理)。分析器的搜索功能允许您为任何过去请求加载配置文件信息。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。