2

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

得到这样的东西:

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

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

尝试了几种变体,但没有任何运气。

4

3 回答 3

3

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

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

这应该有效。

于 2012-06-19T18:51:15.483 回答
2

在我的例子中,我使用了 UnLoCo 解决方案,并尝试使用动态键直接访问数组内容(没有 if 语句),并且效果很好:

{$arr1["column_{$arr2.month}_price"]}
于 2016-04-07T16:43:05.133 回答
0

这也可以

{if $smarty.get["param_{$k.id}_{$p.num}"] eq $key}
  ...
于 2013-05-15T13:21:35.957 回答