smarty循环内读取循环外(与循环数组同级)的变量


php 代码如下:

   
  $smarty = new Smarty;
  
$smarty->assign('role', 'admin');
$smarty->assign('members', array(
array(
'name' => 'Tom',
'role' => 'admin'
),
array(
'name' => 'John',
'role' => 'beginner'
)
));
$smarty->display('index.tpl');

smarty模板 代码如下:

   
  {loop $members}
  
<!-- 这里的{$role}是{$members}中的,那与members同级的role怎么读取 -->
{/loop}

smarty php

过街D猫X 12 years, 9 months ago

smarty 中不可以直接用{loop $xxx}{/loop}循环吧, @崔苔吾 的才是正确的。不过我好久也没用了,新版中也许增加了我也不知道。(至少我在smarty 2.6 中还不能这么用)
所以用foreach 写的测试过:

   
  {foreach from=$members item=member}
  
members中的role : {$member.role} <br />
与members同级的role : {$role} <br />
{/foreach}

战场原XX answered 12 years, 9 months ago

Your Answer