代码之家  ›  专栏  ›  技术社区  ›  ganjan

将数字附加到变量名并在循环中调用它(php)(smarty)

  •  0
  • ganjan  · 技术社区  · 14 年前

    我有一个简单的问题。我需要将1、2、3等附加到smarty中的变量名。变量是 $user1 , $user2 $user3 等等,我用smarty做了一个简单的循环:

         {section name=user_info start=1 loop=$users}
           <tr>
            <td> User{$smarty.section.user_info.index} </td> // prints user1, user2, user3 etc
    
            <td>
             {$user} append this: {$smarty.section.user_info.index} // need to call $userX
            </td>
    
          </tr> 
        {/section} 
    

    我试了所有的衣服 variable info site to smarty

    1 回复  |  直到 14 年前
        1
  •  2
  •   Treffynnon    14 年前

    $user 一个数字索引数组,而不是像现在那样为每个用户声明一个变量($user1,$user2,$user3),然后可以使用:

    {$foo.$bar} <--显示变量 数组的键值,类似于PHP $foo[$bar]

    Smarty Variables manual

    一旦转换,这将是这样的:

    $user = array(
        0 => $user0,
        1 => $user1,
    );
    

    所以对你来说 {$user.$smarty.section.user_info.index} .