вывод в php_templates

anna_maria

Новичок
вывод в php_templates

Допустим, у меня есть массив-список названий картинок.
Требуется вывести:
1. таблицей, в каждой строке по картинке.
2. таблицей, в каждой строке по 3 картинки.
Вопрос: можно ли осуществить оба способа с помощью одного скрипта, т.е. изменяя только шаблон?
 

fisher

накатила суть
если я правильно понял вопрос - в общем случае нет
одна из проблем php_templates - нельзя "параметризовать" вывод, и нельзя управлять какой-либо логикой из шаблона
при этом возможен частный случай, когда один и тот же шаблон может описывать оба варианта, но "переключение" между ними должно все равно быть в пхп-коде, и его нельзя осуществить изменениями в шаблоне
 

anna_maria

Новичок
Спасибо за ответ, видимо Вы меня правильно поняли.
Может быть еще подскажете: Есть дерево с заранее неизвестным количеством уровней в скрипте, а в шаблоне известно. Можно ли сделать такой вывод, чтобы было что-то вроде этого:

<tmpl:all_tree>
<td>
<tmpl:level1>{name}<br>
<tmpl:level2>---{name}<br>
<tmpl:level3>------{name}<br></tmpl:level3>
</tmpl:level2>
</tmpl:level1>
</td>
</tmpl:all_tree>

То есть в шаблоне определялось, как будет выводится каждый из уровней?
ЗЫ: тему http://phpclub.ru/talk/showthread.php?threadid=80396 видела.

-~{}~ 02.03.06 11:50:

Сама сделала (оказалось просто, когда начала все с начала. а так второй день с этим сижу :( ):
массив $all_tree имеет вид:
PHP:
Array
(
    [2] => Array
        (
            [level] => 1
            [name] => test1
        )

    [5] => Array
        (
            [level] => 2
            [name] => test4
        )

    [7] => Array
        (
            [level] => 3
            [name] => test6
        )

    [8] => Array
        (
            [level] => 3
            [name] => test7
        )

    [3] => Array
        (
            [level] => 1
            [name] => test2
        )
)
Функция:
PHP:
function return_podcats2($all_tree, $tmpl, $tag="")
{
	foreach($all_tree as$key=>$value)
	{
			for($i=0; $i<$value['level']; $i++)$tag.="/level".($i+1);
			tmpl_iterate($tmpl, 'all_tree'.$tag);
			tmpl_set($tmpl, 'all_tree'.$tag, $value);
			$tag="";
	}
}
 
Сверху