[英]Smarty output dynamic variable
我的目标是为数学方程式分配一个动态变量(称为技能),如下所示:
$skill_HULK = 5, $skill_MAC = 2, ...
所以我做到了
${math assign="skill_`$sk->skill_abbreviation`" equation="x * y" x=1 y=2}
哪里
$sk->skill_abbreviation returns HULK and MAC (foreach loop).
但是,如何输出变量的结果呢? 我尝试使用“ eval”,但是它只显示我变量的名称。 如果我做 :
{eval var="sk_`$sk->skill_abbreviation`"}
它将输出例如skill_MAC而不是2。
有人可以帮我吗? 谢谢
不确定这是您要找的东西,但是请看一下:
PHP:
$smarty->assign("skill_abbreviation", "HULK");
$smarty->assign("skill_HULK", 5);
$smarty->assign("skill_MAC", 2);
$smarty->display('index.tpl');
模板:
{$skill_{$skill_abbreviation}}
// or
{assign var='myVar' value=$skill_{$skill_abbreviation}}
{$myVar}
结果:
5
// or
5
PHP:
{foreach from=$skill_abbreviations item=abbr}
{$skill_{$abbr}}
{/foreach}
模板:
5
2
结果:
5 2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.