Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: проблема с SMARTY функция assign
 
 автор: Tokmak   (03.05.2009 в 21:59)   письмо автору
 
 

Всем добрый вечер!

Возникла проблема с шаблонизатором SMARTY и его функцией assign

Задаю переменную в шаблонизаторе и подключаю шаблон

...
$smarty->assign('FUNC', functest());
$smarty->display('test.tpl');
...


функция functest():

function functest() {
echo "TEST";
}


Шаблон test.tpl:

Введен текст: {$FUNC}


Должен получить на выходе:
Введен текст: TEST

А получаю:
TEST
введен текст:


В чем проблема? Понимаю, что можно и нужно в данном случае написать

function functest() {
return "TEST";
}

Но у меня слишком большое ECHO, так что это не вариант :(
Спасибо.

  Ответить  
 
 автор: nikita2206   (03.05.2009 в 22:11)   письмо автору
 
   для: Tokmak   (03.05.2009 в 21:59)
 

вы же сами осознали ошибку...
если слишком большое echo ''; то сделайте слишком большое return '';

  Ответить  
 
 автор: tokmak   (03.05.2009 в 22:21)   письмо автору
 
   для: nikita2206   (03.05.2009 в 22:11)
 

в функции одно большое ECHO потом идут IF, и в зависимости от условий выводятся еще несколько небольших ECHO. Т.е. получается, что все разбито, в один тяжело объединить. попробую сейчас, но не знай получится или нет

  Ответить  
 
 автор: nikita2206   (03.05.2009 в 22:27)   письмо автору
 
   для: tokmak   (03.05.2009 в 22:21)
 

вы можете воспользоваться буферизацией вывода...

  Ответить  
 
 автор: tokmak   (03.05.2009 в 23:32)   письмо автору
 
   для: nikita2206   (03.05.2009 в 22:27)
 

ок, спасибо за совет!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования