【发布时间】:2016-08-09 17:32:03
【问题描述】:
我正在开发一个包含 html 电子邮件模板的项目。如果您直接查看内容并且一切正常,则基本上可以在浏览器中看到内容。它主要包含带有徽标的文本。
在我的 PHP 中,我试图获取这个 HTML 模板的内容并将其作为我的 HTML 电子邮件发送。
除了图片,一切都在进行中:
<?php
// vars
$subject = 'Test Email Subject';
$body = file_get_contents("communication.php");
// Email
$objEmail = new SendMail;
$objEmail
-> setFrom('noreply@domain.com')
-> setTo('user@domain.com')
-> setSubject($subject)
-> sendHTMLEmail($body);
?>
它本身的 HTML 只是一个基本的 div,带有一个 img 标记,其中包含图像的完整路径。
我假设file_get_contents 只是获取代码并且不会下载任何内容。
是否有任何原因无法直接链接到图像,或者是否需要以某种方式将它们编码到电子邮件中?
【问题讨论】:
-
file_get_contents将文件作为文本文件读取。这意味着它将读取 php 文件的源代码,而不是解析它的内容和输出。 -
@JonathanKuhn - 是否有 PHP 函数可以处理此问题,或者图像是否需要以不同方式编码?
-
有几种方法可以让它工作。我会根据文件的内容保持警惕。作为“快速修复”,您可以开始输出缓冲,包含文件,然后将输出捕获到您的 body 变量。看看ob_start 和ob_get_clean。
标签: php html email file-get-contents