use*_*141 2 php symfony-mailer
我正在开发一个不使用任何框架的项目,我想使用Symfony Mailer组件来处理发送电子邮件。
安装部分(composer require)处理得很好,所有内容都包含在我的代码中,没有任何错误。但是,我仍然有一个问题:该组件的文档似乎只是为了与 symfony 框架一起使用而编写的。事实上,它指的是自动加载的配置文件,这些文件显然不存在于我的应用程序中。
这个实现似乎非常棘手,我想知道你们中是否有人已经面临同样的问题以及您想出了什么解决方案?
您的问题也让我想知道仅使用邮件程序组件发送邮件是如何轻松的。
因此,我从头开始创建了一个新项目,并按照邮件程序组件文档尝试了最简单的版本。
use Symfony\Component\Mailer\Mailer;
use Symfony\Component\Mailer\Transport;
use Symfony\Component\Mime\Email;
class MyMailer
{
// googleDns format is gmail+smtp://USERNAME:PASSWORD@default
public function __construct(private string $googleDsn)
{
}
public function send()
{
$template = file_get_contents('https://raw.githubusercontent.com/leemunroe/responsive-html-email-template/master/email.html');
$transport = Transport::fromDsn($this->googleDsn);
$mailer = new Mailer($transport);
$email = (new Email())
->from('mygmail@address.com')
->to('thedelivery@gmail.com')
->subject('Time for Symfony Mailer!')
->html($template);
$mailer->send($email);
}
}
Run Code Online (Sandbox Code Playgroud)
我成功收到了我的邮件。我用 Gmail 发送邮件,供您参考。传输类应该为您完成发送工作,但如果没有,您可以查看内部vendor/symfony/mailer/Transport文件夹