在PHP中使用正则表达式动态调用var

在PHP中使用正则表达式动态调用var,php,regex,Php,Regex,我可以用正则表达式动态调用var吗?类似上面的代码? 要将{foo}替换为$foo并返回'yes'吗 谢谢是的,你可以这样做: $foo = "yes"; $pattern = "{foo}"; $pattern = preg_replace('#{(\w+)}#', $'${1}', $pattern); <?php $foo = "yes"; $pattern = "{foo}"; echo $pattern = preg_replace_callbac

我可以用正则表达式动态调用var吗?类似上面的代码? 要将{foo}替换为$foo并返回'yes'吗

谢谢

是的,你可以这样做:

$foo = "yes";
$pattern = "{foo}";

$pattern = preg_replace('#{(\w+)}#', $'${1}', $pattern);
<?php

    $foo = "yes";
    $pattern = "{foo}";

    echo $pattern = preg_replace_callback('#{(\w+)}#',
                                    function($m) use($foo){
                                        return $$m[1];
                                    }, $pattern);

?>
yes