smarty中的动态数组键

时间:2012-06-19 14:33:30

标签: php smarty smarty3

我只想知道如何访问SMARTY中通过smarty生成索引的数组。我想稍后访问它。

得到这样的东西:

{if $smarty.get.{param_{$k.id}_{$p.num}} eq $key}

我想访问$smarty.get.(dynamic generated index)

尝试了几个变种,但没有运气。

3 个答案:

答案 0 :(得分:3)

您可以将变量用于索引,但不能按照您尝试的方式构建字符串。尝试在以下之前构建自定义变量:

{$myIndex = "param_{$k.id}_{$p.num}"}
{if $smarty.get.$myIndex eq $key}
    ...

这应该有用。

答案 1 :(得分:1)

在我的情况下,我使用了UnLoCo解决方案并尝试使用动态密钥直接访问数组内容(不带if语句)并且它完美运行:

{$arr1["column_{$arr2.month}_price"]}

答案 2 :(得分:0)

这也可以

{if $smarty.get["param_{$k.id}_{$p.num}"] eq $key}
  ...