1

我正在尝试使用通过另一个 PHP 文件创建的一些 HTML 生成电子邮件。

电子邮件生成文件由每小时运行的 cron 运行。存在另一个文件,该文件生成电子邮件所需的 HTML。

HTML 生成文件没有我可以调用的函数,例如:

$emailBody = generateHTML($id);

HTML 生成文件旨在包含在您希望显示 HTML 的页面上,例如:

include "htmlGenerator.php";

我的问题是:如何将 htmlgenerator.php 文件返回到变量中,准备好推送到电子邮件中。

抱歉,如果这不是很清楚,我很乐意回答任何问题。

提前致谢!

4

2 回答 2

4

如果我理解你所说的,你可以使用输出缓冲,这样你就可以得到输出htmlGenerator.php

例如:

ob_start();
// as an example
echo "Hello World";
// or in our case
include "htmlGenerator.php";
$result = ob_get_contents();
ob_end_clean();

您还可以像这样创建一个简单的函数:

function include_output($filename)
{
    ob_start();
    include $filename;
    $contents = ob_get_contents();
    ob_end_clean();
    return $contents;
}

$mycontent = include_output("htmlGenerator.php");

阅读 php 文档以获取更多详细信息。

于 2013-07-02T15:03:02.740 回答
0

查看内置函数 ob_start 和 ob_get_clean。

然后,您可以执行以下操作:

ob_start();
include( "file.php");
$var = ob_get_clean();
于 2013-07-02T15:05:06.617 回答