Swift_SmtpTransport 法尔康
Swift_SmtpTransport phalcon
我正在尝试使用依赖注入器在 Phalcon 3 上加载 SwiftMailer,但我收到有关 Swift_transporter 服务的错误。
Phalcon\Di\Exception: Service '\Swift_SmtpTransport' wasn't found in the dependency injection container
我想知道如何在依赖项注入器中加载 Swift_SmtpTransport 服务,无需 composer。我知道composer可以轻松解决这个问题,但我想知道是否有其他选择。
在我的 service.php 文件中,我添加了下一行:
$di->set('mailer', function(){
$mailer = new Manager([
'driver' => 'sendmail',
'sendmail' => '/usr/sbin/sendmail -bs',
'viewsDir' => $this->config->application->viewsDir . 'emails/',
'from' => [
'email' => 'notify@website.com',
'name' => 'Company Team'
]
]);
return $mailer;
});
然后我用下一行调用服务:
$this->mailer([
'to' => 'email@test.com',
'name' => 'First and Last Name',
'subject' => _('Welcome to my website'),
'body' => [
'view' => 'welcome',
'params' => [
'name' => 'First Name',
'link' => $this->url->get('users/activate/?email=email@test.com&activation_key=******')
]
]
]);
在 phalcon 3.0 中添加了名为 loadFile
的 phalcon 加载器的新方法。只需将它与 swift_required.php
路径
一起使用
现在我了解了 Phalcon 孵化器的工作原理。如果有人安装了没有 composer 的孵化器,必须考虑孵化器中的某些库需要外部库。因此,如果您通过克隆 Github 存储库来安装 Incubator,并且不执行 composer update,则必须一一加载外部库的所有依赖项。
我正在尝试使用依赖注入器在 Phalcon 3 上加载 SwiftMailer,但我收到有关 Swift_transporter 服务的错误。
Phalcon\Di\Exception: Service '\Swift_SmtpTransport' wasn't found in the dependency injection container
我想知道如何在依赖项注入器中加载 Swift_SmtpTransport 服务,无需 composer。我知道composer可以轻松解决这个问题,但我想知道是否有其他选择。
在我的 service.php 文件中,我添加了下一行:
$di->set('mailer', function(){
$mailer = new Manager([
'driver' => 'sendmail',
'sendmail' => '/usr/sbin/sendmail -bs',
'viewsDir' => $this->config->application->viewsDir . 'emails/',
'from' => [
'email' => 'notify@website.com',
'name' => 'Company Team'
]
]);
return $mailer;
});
然后我用下一行调用服务:
$this->mailer([
'to' => 'email@test.com',
'name' => 'First and Last Name',
'subject' => _('Welcome to my website'),
'body' => [
'view' => 'welcome',
'params' => [
'name' => 'First Name',
'link' => $this->url->get('users/activate/?email=email@test.com&activation_key=******')
]
]
]);
在 phalcon 3.0 中添加了名为 loadFile
的 phalcon 加载器的新方法。只需将它与 swift_required.php
路径
现在我了解了 Phalcon 孵化器的工作原理。如果有人安装了没有 composer 的孵化器,必须考虑孵化器中的某些库需要外部库。因此,如果您通过克隆 Github 存储库来安装 Incubator,并且不执行 composer update,则必须一一加载外部库的所有依赖项。