Виды шаблонизации

Discussion in 'PHP' started by Kuzya, 19 Feb 2009.

  1. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Полметра собственного кода и 20мб чужих библиотек - маленький проектик?
     
  2. mikhoni

    mikhoni Elder - Старейшина

    Joined:
    20 Aug 2008
    Messages:
    33
    Likes Received:
    6
    Reputations:
    8
    xss


    а зачем виртуализация?


    -- - - - -
    но основная проблема проблема в безопастности.
    nerezus, ты чегото пытаешься обламать всех. Да, может ты имеешь много опыта и т.д. НО опытные люди тоже ошибаются (дороже других эти ошибки), а еще чаше когда зазнаются и леняться и неприслушиваются к другим, посмотри сколько крупных проектов были подержаны атакам.
    Тебя кто то обидел?) что ты такой агресивный?)
    тебя не заставляют и не навязывают, просто рассматриваем + и -
     
  3. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    |escape для смарти escape() для PHP(своя ф-ия)
    Разница лишь в синтаксисе.
     
  4. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Вам всё равно не переспорить Нерезуса, я уже говорил про сытого тигра... Нерезус похоже ещё не наелся...

    З.Ы. Я тя обожаю, Нер.
     
  5. Kuzya

    Kuzya Elder - Старейшина

    Joined:
    27 Apr 2008
    Messages:
    166
    Likes Received:
    106
    Reputations:
    30
    nerezus, аргументируй пожалуйста свой ответ. И я, и groundhog описали почему мы считаем именно так.
    По теме. Мне кажется что здесь всё сводится к тому для каких целей всё это нужно. В принципе любой спор на тему программирования к этому и идёт - не что лучше, а что под какие задачи лучше =). Я думаю что первый вариант возможен для небольших проектиков т.к. если брать шаблоны с множеством вставок то на них смотреть просто нереально. Хотя с другой стороны, разбив эту "нереальность" на множество маленьких шаблонов, можно получить неплохой вариант. Тогда получается что готовые шаблонизаторы и XSLT нужно использовать в больших проектах. Я прав? Кстати давно читал про XSLT что при большом кол-ве шаблонов трудно в них разбираться и можно быстро запутаться. Никто с такой ситуацией не сталкивался?
     
  6. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Я вообще считаю, что нормальный шаблонизатор это полное отделение программного кода от html. Поэтому очень давно юзаю шаблонизатор такого рода: tpl файл основного каркаса и множество tpl-файлов составляющих отдельные куски (менюшки всякие, таблицы, и т.д.). Далее небольшой класс шаблонизатора и весь php код заменяется на указанные теги ({TAG}) в шаблоне. Всё имхо до ужаса просто и удобно, что в общем делает его универсальным.
     
  7. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Итак, для начала разберемся в понятии шаблонизатор.
    Читаем определение: http://en.wikipedia.org/wiki/Template_processor

    Перевод для двоечников: Шаблонизатор - программа(либо часть программы), предназначенная для объединения шаблоов с данными, в результате которого получаются целевые документы.

    Итак, чем пхп не шаблонизатор?
    В нем даже альтернативный синтаксис есть, который служит для этого дела.

    А теперь назовите отличия Smarty от PHP в роли шаблонизатора?
    Итак: вставка в текст, циклы, условия, модификаторы - все есть, причем в ~одинаковое количество кода. Они равны в этом.

    Минусы по сравнению со Smarty - их нет. Никаких новых ошибок нельзя добавить, возможности те же. Так почему некоторые не считают PHP шаблонизатором - загадка.
    Причем шаблонизатором уровня Smarty.

    Шаблонизатор PHP и Smarty - инструменты для одного круга задач. И эти инструменты к тому же одинакового уровня.

    Неверно. Разница будет лишь в скобках.
    Смотри: <?=$someVariable?> и {$someVariable}. Разницы нет.

    Так. Почитай документацию Django, там написано, почему они отказались от него.

    P.S. Повторю третий раз: я ЗА шаблонизаторы. В ЛЮБЫХ проектах. Но PHP - тоже шаблонизатор. Уровня Smarty, если хотите сравнение.
     
  8. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Нер, не знаю, то ли это треш, то ли ты покурил.
    В твоём понимании <?php echo 'Hello Word'; ?> это шаблонизатор?
    Как уже писалось выше, с таким взглядом можно сказать, что любой язык шаблонизатор. А не шаблонизаторами можно назвать ли программы под консоль получается?
    Тогда скоро темы будут не "Какой язык программирования учить?" а "Какой шаблонизатор поучить?".
    PHP прежде всего язык программирования.
    С таким же успехом можно назвать пылесос межпланетным космическим бомбардировщиком. ну это же бред чистой воды
     
  9. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    Нер, пора уже остановиться и не ебсти мозг людям. Чего ты добиваешься? Просто постебаться, так уже пора остановиться. Отстоять свою неверную точку зрения? Ты всё равно это не сможешь.

    Где MVC? Где отделение engine от raw_templates? PHP - это, блять, язык программирования, блять.

    Такой синтаксис достался от PHP/FI. Вот тогда, можно было прикинуться шлангом, и называть его языком шаблонизатора, т.к. там реально кроме управляющих конструкций ничего особого не было. Альтернативный синтаксис это альтернативный синтаксис, это, блять, конструкции ЯЗЫКА PHP и ниибёт.

    Какой уровень? Ты в своём уме? Ты состоянии отличить язык шаблонизатора (который обрабатывается через PHP) от языка программирования, на котором написан Template Engine?! Чё ты за берд несёшь?

    Нерезус, ты хочешь казаться лолом? Я начинаю разочаровываться в тебе как в специалисте... Я просто в шоке!
     
    1 person likes this.
  10. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Нет конечно.

    Нет, т.к. они не могут выполнить таких задач.
    Вот asp и jsp кстати тоже под шаблонизатор подходят.

    Согласен. Но он может быть использован и в качестве шаблонизатора.

    Есть все =)
    Ну блин, хочешь я тебе Smarty-style интерфейс дам?

    Согласен. Но и шаблонизатор тоже.

    Правильно. Она очень подходит для использования шаблонов.

    Ты тупой. Я раз 10 заострял твое внимание, что PHP используется в качестве шаблонизатора, а не ЯП. В качестве шаблонизатора. В качестве шаблонизатора. В качестве шаблонизатора. В качестве шаблонизатора.
    Когда мы его используем шаблонизатор, то мы не смешиваем логику и отображение. Мы используем его только для отображения. Когда мы его используем шаблонизатор, то мы не смешиваем логику и отображение. Мы используем его только для отображения. Когда мы его используем шаблонизатор, то мы не смешиваем логику и отображение. Мы используем его только для отображения.
    Вот.

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

    P.S. Посмотри Zend Framework View. О да, Zend Framework писали нубы, у них же шаблоны на PHP.
    P.P.S. О, что уж говорить о Symfony - как это самые крутые фреймворки, да нубами написаны. Тоже шаблоны на PHP. Совсем идиоты, ога ога.
     
    #30 nerezus, 20 Feb 2009
    Last edited: 20 Feb 2009
    1 person likes this.
  11. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    No comments... Весь инет написан на шаблонизаторе... Пойду набухаюсь...
     
  12. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Ты тупой. Я раз 11 заострял твое внимание, что в шаблонах PHP используется в качестве шаблонизатора, а не ЯП. В качестве шаблонизатора. В качестве шаблонизатора. В качестве шаблонизатора. В качестве шаблонизатора.
     
  13. groundhog

    groundhog Elder - Старейшина

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    PHP - это шаблонизатор. PHP - это шаблонизатор. PHP - это шаблонизатор. PHP - это шаблонизатор. PHP - это шаблонизатор. PHP - это шаблонизатор. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой. Я тупой.
     
  14. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Ты на это вниманиек обрати, если мне не веришь.

    PHP может быть как ЯП, так и шаблонизатором.
     
  15. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Точнее говоря весь инет написан в качестве шаблонизатора)

    Каких задач? Как написано выше:
    Получается, любая программа с GUI-интерфейсом подходит под твоё определение о шаблонизации.

    Ну к примеру другой код:
    PHP:
    <?php
    $code 
    "echo '<h1>Цыферки</h1><br/>';
    for(\$i=1; \$i <= 10; \$i++) echo \$i.'<br/>';
    echo '<h2>Конец цыферок</h2>';"
    ;
    eval(
    $code);
    ?>
    Это по твоему шаблонизатор? Объединяет шаблон с данными, получается конечный документ.....если это шаблон, то это смешно, имхо)
    Или приведи пример твоего понимания что "php это шаблонизатор"....простейший пример, в пару строк..
     
  16. Trieg

    Trieg Elder - Старейшина

    Joined:
    26 Oct 2007
    Messages:
    82
    Likes Received:
    9
    Reputations:
    0
    PHP:
    $code "echo '<h1>Цыферки</h1><br/>'; 
    for(\$i=1; \$i <= 10; \$i++) echo \$i.'<br/>'; 
    echo '<h2>Конец цыферок</h2>';"

    eval(
    $code);
    nerezus и не говорил что подобное это шаблонизатор.... вы уже начинаете писать отсебятину чтоб только доказать что вы правы..

    PHP:
    <? foreach ($articles as $article): ?> 
    <?=$article?> 
    <?endforeach?>
    конкретно он в пример приводит такой синтаксис, и он пытается до вас донести не то что php это шаблонизатор а то что конкретно в данном случае (при написании шаблонов используя такой синтаксис пыха) его можно расматривать как шаблонизатор + такой вариант написания отличается от смарти *2* символами и по идее одно и тоже.

    согласен это не верх эстетики.. но я считаю что такой вариант достоин жизни. Да и вообще шаблонизация ет дело вкуса, один может тащится от смарти второй свято верит в то что чистый пых это самое лучшее =)
     
  17. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    а никто и не спорит) каждый дрочит как захочет)
    Тот код что ты привёл, это чистый php-код и никакой шаблонизации я тут не вижу.

    Например?

    https://forum.antichat.ru/showpost.php?p=1126896&postcount=27
    В этом посте:
    Он пытается до нас это донести. Если б он сказал, что с помощью языка php можно делать шаблонизацию, тогда вопросов не было. А то php шаблонизатор. Тут опять же возвращаясь к прошлому моему посту, получается каждый вывод в браузер можно назвать шаблонизацией? Это тупо..
     
  18. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    PHP можно юзать как ЯП, а можно - как шаблонизатор. Я это говорю.
    Другие ЯП нельзя юзать(за редким исключением) из-за особенности синтаксиса.
     
  19. mikhoni

    mikhoni Elder - Старейшина

    Joined:
    20 Aug 2008
    Messages:
    33
    Likes Received:
    6
    Reputations:
    8
    кто ломал xoops тот знает, что шаблоны не на пхп залог безопастности.
    еслиб там были пхп шаблоны залить шел несостовляло бы труда!!!
    так, что уважаемые гуру, вот вам пример положительной стороны не ПХП шаблонов.

    или Вы считаете что xoops пишут лохи?
    - - -
    таким образом, если в модуле к движку нашли иньекцию, шелл не залить!
     
  20. ShAnKaR

    ShAnKaR Пачка маргарина

    Joined:
    14 Jul 2005
    Messages:
    904
    Likes Received:
    297
    Reputations:
    553
    ну кстати и в шаблонизаторах бывают баги, тот же смарти как пример, а в самодельных все еще проще.