PHP-我需要一种用动态数据替换方括号的方法


PHP - I need a way to replace square brackets with dynamic data

我正在尝试构建一个系统,允许用户在文本区域字段中输入一定数量的文本,在输入的文本中,用户将以[VAR]格式输入一个"变量",文本VAR将被用户需要的"变量"(如[amount](替换,该变量将查询数据库以查找用户的金额,我需要一个PHP脚本来找到那些方括号变量,并用一些动态数据替换它。

有人能帮忙吗?

谨致问候,Roddy

可能的解决方案之一:

$vars = array(
    'username' => 'User1',
    'foo' => 'bar'
);
$text = "Hello, [username]! This is a test! [foo]";
foreach ($vars as $k => $v) $text = str_ireplace("[".$k."]", $v, $text);
echo $text;

您应该使用PHP模板引擎

你可以使用Smarty,我认为这是一个很好的选择,很容易学习和使用

文件:

Smarty文档