tpl 中的嵌套 for 循环返回一个值
Nested for loops in tpl returning one value
我有 2 个数组要循环,一个包含 $int
,另一个包含 $string
。我想 return $int
和 $string
但是当我嵌套到我的 tpl 文件中的循环时它只有 returns $int
.
代码:
{foreach from=$array.subarray1 item="int"}
{foreach from=$array.subarray2 item="string"}
{$string}: {$int}
{/foreach}
{/foreach}
我查看了 smarty 文档并看到 one case of a nested loop 但是当我将它应用到我的代码时它不起作用 - 这完全可能是用户错误..我不确定我的经验工作 tpl 有限。
我的启发的其他问题:我可以让它在 PHP 中工作,而不是在 smarty 中;我是应该聪明地尝试做还是让 PHP 去做?
根据您的描述,您尝试做的事情并不是非常清楚,但听起来您有两个枚举数组,其中一个具有所需的键,另一个具有所需的值。如果这是您所追求的,则不需要嵌套循环。您需要确保两个数组的键等于相同的元素,然后执行一个循环,对两个数组使用相同的键来访问正确的结果。
{foreach from=$array.subarray1 item="int" key="key"}
{$array.subarray2[$key]}: {$int}
{/foreach}
我有 2 个数组要循环,一个包含 $int
,另一个包含 $string
。我想 return $int
和 $string
但是当我嵌套到我的 tpl 文件中的循环时它只有 returns $int
.
代码:
{foreach from=$array.subarray1 item="int"}
{foreach from=$array.subarray2 item="string"}
{$string}: {$int}
{/foreach}
{/foreach}
我查看了 smarty 文档并看到 one case of a nested loop 但是当我将它应用到我的代码时它不起作用 - 这完全可能是用户错误..我不确定我的经验工作 tpl 有限。
我的启发的其他问题:我可以让它在 PHP 中工作,而不是在 smarty 中;我是应该聪明地尝试做还是让 PHP 去做?
根据您的描述,您尝试做的事情并不是非常清楚,但听起来您有两个枚举数组,其中一个具有所需的键,另一个具有所需的值。如果这是您所追求的,则不需要嵌套循环。您需要确保两个数组的键等于相同的元素,然后执行一个循环,对两个数组使用相同的键来访问正确的结果。
{foreach from=$array.subarray1 item="int" key="key"}
{$array.subarray2[$key]}: {$int}
{/foreach}