Smarty. Строки

ygen

Новичок
Имеется поле. Данные представлены списком типа:

сумма=название поля;
сумма=название поля;
сумма=название поля.

Вывожу следующим образом:

Код:
{foreach from=$item->combo_c item=combo_c}
                          <option value="{$combo_c|replace:'=':'">'|replace:';':'</option>'}
{/foreach}
Соответственно выводится только первая строка. Подскажите, как перебрать все значения поля? (пытаюсь адаптировать ListIt2 из состава CMS made simple), который использует smarty. Подскажите, как можно решить проблему вывода списка?

Спасибо
 

ygen

Новичок
Данные находятся в $item->combo_c в виде строки. В c++ бы такое проще сделал бы, а в smarty не совсем понимаю, как это реализовать... надо найти и заменить все символы в строке... но такой функции насколько я знаю нет здесь
 

ygen

Новичок
И как мне разбить строку то эту? array не работает в assign... хотя по факту уже и так переменная должна быть строчной.
http://www.smarty.net/docsv2/ru/language.custom.functions

{assign var="data" value="<option value=`$item->combo_c|replace:'=':'>'|replace:';':'</option>'`"}

После replace все-равно остается только одна строка, а остальные данные пропадают.

P.S. и в этой CMS нет возможности добавить код на PHP.
 
Последнее редактирование:

AnrDaemon

Продвинутый новичок
Как только вы перестанете писать PHP код в шаблонах, решение сразу станет очевидным.
 

ygen

Новичок
Теперь понятно, не дописал открытие option...:p
{assign var="data" value="<option value=`$item->combo_c|replace:'=':'>'|replace:';':'</option><option value='`"}
 
Сверху