Назначить переменную в цикле Foreach - PullRequest
3 голосов
/ 27 марта 2012

Я извлекаю массив и хочу назначить атрибуты элементов в массиве отдельным переменным. Например, я хочу назначить переменную с именем user_1_name для включения userInfo.name из первого userID и user_2_name для включения userInfo.name из второго userID. Вот код в его нынешнем виде, он использует собственный метод с именем 'get_friend_list':

{assign var="friend_list" value=""}
{get_friend_list snid=$TOSNID snuid=$TOUID gameid=$GAMEID assign="friend_list"}
{if $friend_list|@count > 0}
  {foreach from=$friend_list key=userId item=userInfo name=friend_list}
    {if $smarty.foreach.friend_list.index < 4 && $smarty.foreach.friend_list.index >= 0 && !empty($userInfo.user_uid) }                             
      ***VARIABLE ASSIGNMENT HERE***
    {/if}
  {/foreach}
{else}
{/if}

Если это неясный вопрос, дайте мне знать, и я постараюсь прояснить его.

Спасибо

РЕДАКТИРОВАТЬ: Кстати, если вы не заметили, я использую Smarty.

Ответы [ 2 ]

2 голосов
/ 27 марта 2012

Вы пробовали:

{assign var="user_{$smarty.foreach.friend_list.index}_name" value=$userInfo.name}

?

0 голосов
/ 27 марта 2012

Это то, что вы хотите? присвоить

...