0

我正在尝试创建一个模板函数:

function includeAndTemplate($file){
    $json = '{"FIRST_NAME" : "First Name", "MIDDLE_NAME" : "Middle Name"}';
    $template_vars = json_decode($json);
    $file = file_get_contents($file);
    foreach($template_vars as $var => $value){
        $file = str_replace("{{\$".$var."}}", $value, $file);
    }   
    return $file;
}

我的html/php:

<p>{{$FIRST_NAME}}, {{$MIDDLE_NAME}}</p>

这很好用。

现在如果我有这个会发生什么:

<p>{{$FIRST_NAME}}, {{$MIDDLE_NAME}}, the time now is <?php echo data("H:i:s"); ?></p>

原始 php 代码输出到客户端

4

1 回答 1

2

我认为您正在寻找的是这样的:

<?php
function includeAndTemplate($file){
    $json = '{"FIRST_NAME" : "First Name", "MIDDLE_NAME" : "Middle Name"}';
    $template_vars = json_decode($json);

    ob_start();
    require $file;
    $file = ob_get_clean();

    foreach($template_vars as $var => $value){
        $file = str_replace("{{\$".$var."}}", $value, $file);
    }   
    return $file;
}

只需包含该文件,以便执行 PHP 代码,然后替换您想要替换的任何内容。

于 2013-07-21T17:42:22.057 回答