在Yii2中安装swiftmailer后,未发现Swift_Message错误


Swift_Message not found error after swiftmailer installed in Yii2

我正在使用Yii2在一个项目中设置一个mailer。Swiftmailer似乎是这个框架的最佳解决方案,所以我只是遵循了文档。

在composer.json 中

 "yiisoft/yii2-swiftmailer": "*"

紧随其后的是:

 composer install

在我的配置中,我有:(是的,我现在只想让它保存一个文件。)

'components' => [
    'mailer' => [
        'class' => 'yii'swiftmailer'Mailer',
        'useFileTransport' => true,
    ],

然后我把它放进一个控制器:

 'Yii::$app->mailer->compose()
   ->setFrom('from@domain.com')
   ->setTo('to@domain.com')
   ->setSubject('Message subject')
   ->setTextBody('Plain text content')
   ->setHtmlBody('<b>HTML content</b>')
   ->send();

我的错误是:

PHP FATAL-找不到类"Swift_Message"

我相信,经过一些研究,这与自动加载器/延迟加载有关,但我能找到的信息参差不齐。它的大部分内容都表明,如果使用composer安装可以解决问题,那么我所有的故障排除都让我不知所措。

这是我的堆叠比赛。谢谢你的帮助。

附加:

  • composer资产插件-已安装
  • vendor/comporter/autoload_files.php确实包含以下行:
  •  $vendorDir . '/swiftmailer/swiftmailer/lib/swift_required.php',  
    

    我很想结束这种尴尬,但如果有人做出和我一样的假设,我愿意帮忙。

    输入脚本是否包含"vendor/autoload.php"require?是吗指向正确的文件?尝试手动将模具("wiftmail")置于"vendor/swiftmailer/swiftmailer/lib/swift_required.php"-它应该出现在任何应用程序运行时。

    通过(klimov paul/yiisoft)

    CCD_ 1无效。

    不需要vendor/autoload.php

    我假设已经安装在供应商文件夹中的其他扩展正在使用中。我发现以前的开发人员没有在那里使用任何东西,require(__DIR__ . "/../vendor/autoload.php");也不在执行路径中。