Я где-то читал, что PHP - это язык шаблонов. Что такое язык шаблонов? Что делает PHP одним? Каковы другие языки шаблонов?
Что такое язык шаблонов?
Ответ 1
Предпосылка языка шаблона заключается в том, что язык "встроен" в какой-либо другой основной документ. В частности, в вашем среднем документе общий размер документа в основном является источником документа, чем язык шаблонов.
Рассмотрим два надуманных примера:
print "This is a simple document. It has three lines."
print "On the second line is my name: " + firstName
print "This is the third line."
против
This is a simple document. It has three lines.
On the second line is my name: $firstName
This is the third line.
В первом примере вы можете увидеть, что язык обертывает текст документа. Во втором примере текст документа является наиболее распространенным, с небольшим количеством кода.
Некоторые языки шаблонов являются полноразмерными языками общего назначения, такими как PHP, ASP.NET и Java JSP. Другие более ограничены специально для шаблонов, таких как Velocity и FreeMarker (обе утилиты для Java).
Многие текстовые процессоры, такие как Microsoft Word, имеют свои собственные возможности шаблонов, обычно называемые "Слияние писем".
Ответ 2
Язык шаблонов в основном представляет собой язык, который позволяет определять заполнители, которые впоследствии должны быть заменены для реализации проектов. Очевидно, что современные языки шаблонов не только поддерживают заполнители, но и петли и условия, которые часто необходимы для проектирования веб-страницы. Некоторые даже поддерживают более продвинутые, но все же полезные методы, такие как наследование шаблонов, макросы и песочница.
О PHP: поскольку сам PHP может быть интерполирован в HTML, он может использоваться как язык шаблонов. С другой стороны, PHP довольно подробный, особенно если короткие теги не включены.
Быстрый и многофункциональный механизм шаблонов Twig. Я бы порекомендовал его более умный. Он предлагает больше возможностей (в первую очередь наследование шаблонов) и быстрее.
Ответ 3
Попробуйте http://en.wikipedia.org/wiki/Template_engine_ (web).
Ответ 4
PHP не обязательно является языком шаблонов, но он может передать этот тест из-за того, как он интерпретируется.
Когда файл PHP читается, просматривается только код в тегах блока PHP (<?php
и ?>
), остальные передаются на выход. Таким образом, файл .html может обрабатываться интерпретатором PHP, и ничего не произойдет, HTML будет выводиться.
Если в некоторых областях HTML файла были PHP-теги и код, он будет интерпретироваться и, вероятно, выводит некоторые данные в этих местах. Это можно считать шаблоном. Обычно это идея иметь выходной слой, а затем динамический контент, который с ним связан. У вас может быть шаблон страницы продукта, а затем на основе некоторой входной переменной заполнять только отдельные детали/изображения/etc продуктов в шаблон.
Существуют реальные шаблонные механизмы для PHP (Smarty для одного.. http://www.smarty.net/), на который вы можете взглянуть.
Я никогда не был их поклонником, но многие люди находят успех.
Ответ 5
Вы можете прочитать на Smarty 3.
http://www.smarty.net/v3_overview
например. теперь он имеет наследование шаблона