1

別の PHP ファイルで作成された HTML を使用して電子メールを生成しようとしています。

電子メール生成ファイルは、1 時間ごとに実行される 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 に答える