Template engines คือ อะไร ....?
เข้า ใจง่ายๆ คือ การแยก Code HTML แยกจาก Code PHP อย่างชัดเจน ทำให้สามารถแยกผู้พัฒนา HTML และ JavaScript กับ ผู้พัฒนา PHP ออกจากกัน การที่เราเขียน PHP ไปพร้อมๆกับการทำในส่วนของ HTML ทำให้เกิดความล่าช้าแทนที่นักพัฒนาจะเขียน Code php ไปอย่างต่อเนื่องก็ต้องมาเขียนทางฝั่งแสดงผลอีก ถ้ามี 10 หน้า Page ก็ต้องมาเสียเวลาแก้ไขและตรวจ HTML ต่างๆ ที่อยู่ใน php สรุปคือ แทนที่จะได้ Debug php ต้องเวลามา Debug HTML ด้วย!
บทความเพิ่มเติม
(Twig php Template Engin flexible ทำงานเร็วและ secure )
เว็บไซต์ในปัจจุบันเน้นการพัฒนาที่ออกมาสวยงามใช้งานง่ายอาจจะต้องใช้ความสามารถของผู้พัฒนาทางฝั่ง Client ที่เก่งและเชี่ยวชาญ และการที่เราสามารถแยกการทำงานแบบนี้แหละทำให้เราสามารถมีผู้เชียวชาญในแต่ละด้านได้ ผู้พัฒนา PHP ก็พัฒนาได้อย่างเต็มที่ ส่วนการออกแบบ HTML ก็จะทำงานได้อย่างเต็มทีเช่นกัน
ตัวอย่าง Code Twig
{% extends "AcmeDemoBundle::layout.html.twig" %}
{% block title "Symfony - Contact form" %}
{% block content %}
<form action="{{ path('_demo_contact') }}" method="POST" id="contact_form">
{{ form_errors(form) }}
{{ form_row(form.email) }}
{{ form_row(form.message) }}
{{ form_rest(form) }}
<input type="submit" value="Send" class="symfony-button-grey" />
</form>
{% endblock %}