PHP:字符串到实际值

PHP:字符串到实际值,php,Php,我正在创建一个函数来解析模板系统中的文本,并添加相应的值 例如,用户可能输入hi[[first\u name]],而[[first\u name]]]部分将替换为实际的名字 不知怎的,我解析了它,最后得到了如下文本: hi $info['first_name'] 上面的内容就像文本一样,我应该怎么做才能真正使$info['first_name']成为值(我已经有了这个数组,但我不知道如何将字符串转换为PHP变量) 谢谢 使用简单的stru\u replace功能: $str = "hi [[f

我正在创建一个函数来解析模板系统中的文本,并添加相应的值

例如,用户可能输入
hi[[first\u name]]
,而
[[first\u name]]]
部分将替换为实际的名字

不知怎的,我解析了它,最后得到了如下文本:

hi $info['first_name']
上面的内容就像文本一样,我应该怎么做才能真正使$info['first_name']成为值(我已经有了这个数组,但我不知道如何将字符串转换为PHP变量)


谢谢

使用简单的
stru\u replace
功能:

$str = "hi [[first_name]]";
foreach (array_keys($info) as $key) {
    $str = str_replace("[[".$key."]]", $info[$key], $str);
}
echo $str;
您尚未共享代码,但可以打印变量名而不是其值。


<?php
$myTemplate = "hi [[first_name]], how are you this fine [[day_of_week]]?";

$myData = array(
  '[[first_name]]' => 'James'
  ,'[[day_of_week]]' => 'Friday'
);

echo str_replace(array_keys($myData), array_values($myData), $myTemplate);
?>

请在定义要插入视图的变量的位置发布代码。为什么要使用模板系统?PHP本身就是一个模板引擎,为什么还要在上面增加不必要的开销?$info['first_name']是变量。@NullUserExceptionఠ_ఠ 我一直在想同样的事情:)对于设计师来说使用
随机语法更容易的论点,即在
上使用首名随机语法结尾
并不能真正说服我。好吧,离题了,但这真让我受不了。
<?php
$myTemplate = "hi [[first_name]], how are you this fine [[day_of_week]]?";

$myData = array(
  '[[first_name]]' => 'James'
  ,'[[day_of_week]]' => 'Friday'
);

echo str_replace(array_keys($myData), array_values($myData), $myTemplate);
?>