Php 模板工具包foreach to Smarty
我在模板工具箱中有一个foreach循环,我正在将其转换为Smarty,但我不确定要将其更改为什么Php 模板工具包foreach to Smarty,php,smarty,template-toolkit,Php,Smarty,Template Toolkit,我在模板工具箱中有一个foreach循环,我正在将其转换为Smarty,但我不确定要将其更改为什么 [% FOREACH ps IN pack_stats %] <tr> [% FOREACH key IN [ id, domain, username, password, plan, price, renew, status ] %] <td>[% ps.$key %]</td> [% END %] </tr> [% EN
[% FOREACH ps IN pack_stats %]
<tr>
[% FOREACH key IN [ id, domain, username, password, plan, price, renew, status ] %]
<td>[% ps.$key %]</td>
[% END %]
</tr>
[% END %]
[%FOREACH ps IN pack_stats%]
[%FOREACH密钥位于[id、域、用户名、密码、计划、价格、续订、状态]]]
[%ps.$key%]
[%END%]
[%END%]
我知道在smarty中,foreach循环更改为
{foreach from=$pack_stats item=ps}{/foreach}
,但是中间的文本我不确定如何更改它,以循环通过传递给ps变量的每个键。我不知道是否有更干净的方法来执行此操作,但您可以尝试的一件事是为变量分配一个键数组,然后对其执行标准的{foreach}
:
{assign var='keys' value=','|explode:"id,domain,username,password,..."}
{foreach from=$pack_stats item=ps}
{foreach from=$keys item=key}
<td>{$ps.$key|escaped}</td>
{/foreach}
{/foreach}
{assign var='keys'value=','|分解:“id,域,用户名,密码,…”}
{foreach from=$pack_stats item=ps}
{foreach from=$keys item=key}
{$ps.$key |转义}
{/foreach}
{/foreach}
{$keys=[“id”、“域”、“用户名”、“密码”、“计划”、“价格”、“续订”、“状态”]}
{foreach$pack_stats as$ps}
{foreach$keys作为$k}
{$ps.$k|逃脱}
{/foreach}
{/foreach}
(Smarty3语法){$ps.key}
应该是{$ps.$key}
{$keys = ["id", "domain", "username", "password", "plan", "price", "renew", "status"]}
{foreach $pack_stats as $ps}
<tr>
{foreach $keys as $k}
<td>{$ps.$k|escape}</td>
{/foreach}
</tr>
{/foreach}