Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > цикл в smarty


Автор: lastovetski 7.1.2008, 14:38
Кто нить подскажите плз в смарти есть обычный цикл типа while?
Или как сделать его?
Вобщем нужно написать "бла бала" n раз, как это сделать?

Автор: FractalizeR 7.1.2008, 17:42
Есть section, cycle и foreach. Посмотрите документацию по Смарти. Можете вашу n запихать в массив столько раз, сколько надо, а потом foreach сделать по этому массиву.

Автор: lastovetski 7.1.2008, 18:45
Цитата

Можете вашу n запихать в массив столько раз, сколько надо, а потом foreach сделать по этому массиву.

не рационально!!
может как нить по другому???? smile 

Автор: FractalizeR 7.1.2008, 20:59
Нормально поставьте задачу, пожалуйста, а потом будем обсуждать наиболее рациональное решение. Объясните подробно, что и как вам надо выводить

Автор: mikla 14.1.2008, 20:21
Цитата(lastovetski @ 7.1.2008,  18:45)
Цитата

Можете вашу n запихать в массив столько раз, сколько надо, а потом foreach сделать по этому массиву.

не рационально!!
может как нить по другому???? smile


ну можно сделать как говорит FractalizeR 

Код

$a = array_fill(0, $n, 'banana'); 


Код

{foreach from=$a item=arr_item}
$arr_item
{/foreach}


еще есть в смарти  {php} ... {/php} который позволяет вставлять PHP код прямо в шаблон. 
т.е. 
Код

{php}
while () {
echo ...
}
{/php}






Автор: GeneralElectric 14.1.2008, 20:32
Цитата(mikla @  14.1.2008,  20:21 Найти цитируемый пост)
еще есть в смарти  {php} ... {/php} который позволяет вставлять PHP код прямо в шаблон... 

...и убивает саму идею шаблонов на корню.

Автор: FractalizeR 14.1.2008, 20:40
Цитата(GeneralElectric @ 14.1.2008,  20:32)
Цитата(mikla @  14.1.2008,  20:21 Найти цитируемый пост)
еще есть в смарти  {php} ... {/php} который позволяет вставлять PHP код прямо в шаблон... 

...и убивает саму идею шаблонов на корню.

Полностью согласен.
Считаю, нужно все-таки понять, как у автора задача стоит, прежде, чем отвечать.

Автор: mikla 14.1.2008, 20:46
Цитата(FractalizeR @ 14.1.2008,  20:40)
Считаю, нужно все-таки понять, как у автора задача стоит, прежде, чем отвечать.

Ну я понял, что ему нужно вывести одну и туже фразу (пос-ть символов) n раз. 

Автор: FractalizeR 14.1.2008, 21:29
Так зачем - вот в чем вопрос. Что это за код такой в шаблоне, что его надо выводить варьируемое количество раз? Может, есть другое решение.

Автор: dsCode 15.1.2008, 01:13
lastovetski, 
Код

{section name = mySection start = 0 loop = 10 step = 1}
    {$smarty.section.mySection.index}. bla-bla<br />
{/section}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)