PHP では、テンプレートから HTML ページを生成し、特定の場所に変数を挿入してからディスクに保存する必要があります。
これまでのところ、このコードはうまく機能します:
<?php
$client = "John doe";
$template = "
<html>
<body>
<div>
$client
</div>
</body>
</html>
";
$htmlCode = $template;
$fh = fopen("page.html", 'w') or die("can't open file");
fwrite($fh, $htmlCode);
fclose($fh);
?>
最終的には、次のようなものを使用して、ディスク上のファイルから $template を丸呑みして読み取りたいと考えています。
$template = file_get_contents("template.html");
しかし、このアプローチを使用すると、$client を "John doe" に置き換えることはできません。代わりに、ディスクに保存すると、HTML コードで $client として表示されます。
正規表現と printf を使用して部分文字列を置き換えることに関するいくつかの投稿を読みましたが、シナリオでそれらをどのように使用できるかわかりませんでした。私は、より簡単でより良い方法があるに違いないと確信しています。
多くの場所に多くの変数を配置する必要があるため、それぞれの正規表現を作成したくありません。$variable を外部 html ファイルのどこにでも貼り付けられるようにしたいだけで、PHP はそれを変数コンテンツ (存在する場合) に置き換える必要があります。残念ながら、 file_get_contents() は、解釈なしでそのまま文字列に丸呑みするだけです。インデントしたときに実際に動作する丸呑みに使用できる別の機能があるかどうか、私はさまよっていました。
どんな提案でも大歓迎です。