我想在phpmailer的电子邮件中包含我想要的图像有一个问题。我已经尝试使用swift邮件程序与我的symfony应用程序,但没有工作我已经尝试了所有配置(所有主机所有端口所有加密等)3天我打电话给他们等没有任何成功。它适用于本地而非远程环境......无论如何,让我们回到我的问题。
我使用带有安可的webpack(为symfony4设置资产的新方法)。我的所有图像都在公用文件夹中重命名。 myimagename.65342324b5.jg I / O myimagename.jpg当我运行安可来部署资产时。
问题是我想要AddEmbeddedImage
我假设我在assetsfolder中有logo.png。当我部署资产时,它在公共图像文件夹中重命名为logo.536324324V3.png。所以,当我这样做
$mail->AddEmbeddedImage('images/logo.png','mon_logo', 'logo.png');
当我想在我的电子邮件的html主体中引用'mon_logo'时,图像未加载,因为它不存在仅logo536324324V3.png。
我有2个选择:
所以,如果你有解决方案,我会接受它:)
谢谢 :)
假设您正在使用第二种方法中建议的Asset-component,您可以传入类\Symfony\Component\Asset\Packages
,它应该在服务id assets.packages
下可用,而Symfony 4也可以在它的完全限定类名下传递。 Packages
类管理您的资产,也是asset()
函数中Twig_Extension中使用的。
所以在你的代码中你可能会做这样的事情:
$fileUrl = $packages->getUrl('images/logo.png');