Основная причина, по которой люди используют системы шаблонов, - это отделение логики от представления. Это дает несколько преимуществ.
Во-первых, вы можете передать шаблон веб-дизайнеру, который может перемещать вещи по своему усмотрению, не беспокоясь о сохранении потока кода. Им не нужно понимать PHP, просто чтобы оставить специальные теги в покое. Возможно, им придется выучить несколько простых семантик для нескольких тегов, но это намного проще, чем изучение всего языка.
Кроме того, разделив страницу на отдельные файлы, и программист, и дизайнер могут работать с одной и той же «страницей» одновременно, возвращаясь к системе управления версиями по мере необходимости, без конфликтов. Дизайнеры могут тестировать визуальные элементы своих шаблонов в сравнении со стабильной версией кода, в то время как программист вносит другие, потенциально разрушительные изменения, в свою собственную копию. Но если эти люди редактировали один и тот же файл и должны были объединить разные изменения, вы можете столкнуться с проблемами.
Это также способствует внедрению хорошей практики программирования, позволяющей отделить бизнес-логику от логики представления. Если вы смешаете свою бизнес-логику с презентацией, вам будет сложнее извлечь ее, если вам потребуется представить ее позже. В наши дни все большую популярность приобретают различные способы представления в веб-приложениях: каналы RSS / ATOM, ответы JSON или AJAX, WML для портативных устройств и т. Д. При использовании системы шаблонов это часто можно сделать полностью с помощью шаблона, без каких-либо изменений или с небольшими изменениями. остальное.
Однако не все будут нуждаться или ценить эти преимущества. Преимущество PHP над Java / Python / Ruby / etc заключается в том, что вы можете быстро взламывать веб-страницы с некоторой логикой, и это все хорошо.