我想将一个变量的名称放在一个字符串中,以便稍后我可以在对该字符串进行求值之前定义该变量,使其成为变量的值。我怎么能这样做?
一些不同的尝试:
{assign var="test" value="$foo"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:未定义的索引:foo
{assign var="test" value="{$foo}"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:未定义的索引:foo
{assign var="test" value="\{$foo}"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:未定义的索引:foo
{assign var="test" value="\$foo"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:$ foo
{assign var="test" value="{\$foo}"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:语法错误
{assign var="test" value="\{\$foo}"}
{assign var="foo" value="bar"}
{eval var=$test}
结果:\ bar
答案 0 :(得分:1)
找到解决方案:使用单引号!
{assign var="test" value='{$foo}'}
{assign var="foo" value="bar"}
{eval var=$test}
结果:bar