このようなもの:
$vars = array("key" => "value", "key2" => "value2" //..etc);
function ($template, $vars) {
$file = file_get_contents($template);
foreach ($vars as $key => $value) {
str_replace($template //this is where I get confused);
}
}
テンプレート ファイル (html のみを含む) の内容を取得すると、foreach が実行され、vars 配列内の「キー」であるテキストが、vars 配列内の「値」フィールドであるテキストに置き換えられます。テンプレート ファイルのどこかに "{content}" のようなテキストがあるとします。関数は、その文字列 (私の例では指定しなかったことがわかっている中かっこを含む) を見つけ、それを配列内の対応する値に置き換える必要があります。
str_replace() 関数を十分に理解していないように感じます。PHP.netもあまり役に立ちません。私が理解しているように、次のようになります。
str_replace($replacethese, $withthese, $inthisfile);
簡単ですが、配列が 2 次元の場合、どのようにすればよいでしょうか? 私の「$replacethese」引数は、$vars 配列の「キー」値でなければなりません。