带有文件后台处理的SwiftMailer不存储电子邮件

时间:2019-01-29 07:46:08

标签: symfony swiftmailer symfony-3.4

我尝试将SwiftMailer设置为使用假脱机文件系统。我将按照Symfony 3.4文档中的步骤进行操作,但无法按我希望的那样工作,电子邮件不断发送,并且我想要的文件夹中没有库存。

这是我的配置:

config.yml

swiftmailer:
    transport: '%mailer_transport%'
    host: '%mailer_host%'
    username: '%mailer_user%'
    password: '%mailer_password%'
    spool:
        type: file
        path: '%kernel.project_dir%/src/to/folder/Spool'
    disable_delivery: true

PHP

$transport = new \Swift_SmtpTransport();
$mailer = new \Swift_Mailer($transport);
$message = (new \Swift_Message())
    ->setSubject('Test of spool email')
    ->setFrom(['test@mail.com' => 'Test mailer'])
    ->setTo('fake@mail.com')
    ->setBody("Email de test");
foreach($listeDestinataires as $desitnataire) {
    $mailer->send($message);
}

我试图清空dev和prod缓存,但是没有任何效果。
如果我做php bin/console swiftmailer:debug,我将得到以下结果:

Configured SwiftMailer Mailers
==============================

 -------------------------- ----------- ------- ---------- ----------------
  Name                       Transport   Spool   Delivery   Single Address
 -------------------------- ----------- ------- ---------- ----------------
  default (default mailer)   null        YES     NO
 -------------------------- ----------- ------- ---------- ----------------

我不知道我在做什么错...

1 个答案:

答案 0 :(得分:0)

您是否发送了正确的环境DEV或PROD?

也可以尝试以下方法:路径:'%kernel.project_dir%/ var / spool'

目录是否存在?

例如:https://symfony.com/doc/current/email/spool.html