Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Вопрос по шаблонизаторам
Сообщения
Stik

Сегдня занялся вопросом по шаблонизаторам, скачал смарти, по-тихоньку изучаю, действительно причтно когда хтмл лежит отдельно от пхп.
Вопрос такой, при использовании свитч-кейс, нужно создавать отдельный шаблон под каждый кейс или можно реализовать все в одном? Можно конечно поизвращаться с {if}, но думаю есть более рациональный способ, буду признателен за простенький пример

12 Янв 2013, 13:50
Akdmeh

Проще один файл, меньше парсить будет, скорее будет работать.
И вообще есть тема о шаблонизаторах

12 Янв 2013, 13:55
Golodnyi

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

12 Янв 2013, 14:40
Stik

Akdmeh, учту на будущее, но раз создал уже...
добавлено спустя 46 секунд:
Golodnyi, однако люди пользуются, да и не факт, что буду строить на нем проект, для общего развития полезно

12 Янв 2013, 14:49
Gemorroj

Golodnyi, ты живешь в каком-то странном мире)
Все нормальные проекты используют шаблонизаторы в том или ином виде.

12 Янв 2013, 16:23
Molfar

Gemorroj пишет:
"Golodnyi, ты живешь в каком-то странном мире)
Все нормальные проекты используют шаблонизаторы в том или ином виде."

Паша, а те, кто не используют выходит "ненормальные"? Ну я обхожусь и не страдаю.

12 Янв 2013, 17:14
Akdmeh

То есть, ты предпочитаешь кашу из разметки и кода?

12 Янв 2013, 17:21
Molfar

Akdmeh пишет:
"То есть, ты предпочитаешь кашу из разметки и кода?"

я лишь ответил Паше, что это не критерий "нормальности" проекта. Не более. Не надо крайностей.

12 Янв 2013, 17:24
Akdmeh

Обычно очень даже критерий.
Не обязательно внешний шаблонизатор типа Twig или Smarty, но хотя бы с использованием native-кода.

12 Янв 2013, 17:29
Stik

Так все же, как выводить нужные части из шаблона? Учитывая, что в скрипте кейсы и вложенные условия.
Пока спорили дострадался до такого изврата:
[php:1:147a849ec0]default:
$smarty -> assign('view',$view = 1);
$smarty -> display('help.tpl');
break;

case 'test':
if (empty($n)){
$smarty -> assign('view',$view = 2);
$smarty -> display('help.tpl');
}
else{
$smarty -> assign('view',$view = 3);
$smarty -> display('help.tpl');
}
break;
[/php:1:147a849ec0]
Шаблон
{if $view == 1}
тест1
{elseif $view == 2}
тест2
{elseif $view == 3}
тест3

12 Янв 2013, 17:34
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.