Вывести результат работы функции (return)

voland

Guest
Вывести результат работы функции (return)

Разобрался, как подключать функции, но тут же столкнулся с проблемой!
Есть функция я в результате работы получаю переменную, которыу должен вывести на экран, но так как функция рекурсивная, то echo я использовать не могу.
Раньше я делал так:
PHP:
function ListTree(){
---------------------------
        return $var;
};
echo ListTree();
И у меня отображалось то, что я возвращаю, а как отобразить полученное в смарти?
 

Demiurg

Guest
лично я ничего не понял.
ты делаешь свою функцию в смарти ?
 

voland

Guest
Нет, я использую свою функцию в смарти
В документации написано, что результат работы функции будет выведен на месте инсерта... Но не выводит...
{insert name="tree" name_func="ListTree" param=$parent_id}
 

Demiurg

Guest
так если у тебя функция не выводит ничего, откуда результату взяться?
 

voland

Guest
В том то и дело, что функция выводит...
Ну вот например:
PHP:
function test(){
  $k = "qweqweqweqwe";
  return $k;
};
echo test();
Ведь эта же функция выведет... У моей примерно тот же принцип... Только я понятия не имею, как сделать в смарти аналог echo test();
 

Demiurg

Guest
echo же не в функции с какой радости оно должно выполняться.

-~{}~ 24.08.04 15:49:

>Только я понятия не имею, как сделать в смарти аналог echo test();
если я тебя правильно понмаю, то сделай дву функции одна рекрусивная, а вторая будет вызывать эту самую рекрусивную функцию. Это ту то вторую и будет вызывать смарти
 

voland

Guest
если я тебя правильно понмаю, то сделай дву функции одна рекрусивная, а вторая будет вызывать эту самую рекрусивную функцию. Это ту то вторую и будет вызывать смарти
Спасибо, припарка помогла, до этого я не додумался!
Ещё сразу возник вопросец!
Есть конструкция: (Результат запроса к БД)
while($row = mysql_fetch_array($query)){
echo "<a href=".$_SERVER['PHPSELF']."?".$row['q'].">".$row['nm']."</a>";
}
Мне чтобы выводить это в том месте шаблона, где надо, надо:
а) Передать переменные в шаблон и там реализовать этот цикл?
б) Сделать include_php?
Или есть другие варианты?
 

Demiurg

Guest
конечно передавать данные шаблону и им уже выводить как захочется.
 

voland

Guest
Demiurg
Спасибо!

-~{}~ 24.08.04 16:10:

Спасибо, припарка помогла, до этого я не додумался!
ая-я-яй...
Идиот я... Чтобы сделать как у меня надо было в
smarty_insert_tree()
сделать echo ListTree();

Хорошо, что вовремя дошло...
 
Сверху