Smarty是一個php模板引擎。更准確的說,它分開了邏輯程式和外在的內容,提供了一種易於管理的方法。可以描述為應用程式員和美工扮演了不同的角色,因為在大多數情況下 ,他們不可能是同一個人。例如,你正在建立一個用於瀏覽新聞的網頁,新聞標題,標籤欄,作者和內容等都是內容要素,他們並不包含應該怎樣去呈現。在Smarty的程式裡,這些被忽略了。模板設計者們編輯模板,組合使用html標籤和模板標籤去格式化這些要素的輸出(html表格,背景色,字體大小,樣式表,等等)。有一天程式員想要改變文章檢索的方式(也就是程式邏輯的改變)。這個改變不影響模板設計者,內容仍將准確的輸出到模板。同樣的,哪天美工吃多了想要完全重做界面,也不會影響到程式邏輯。因此,程式員可以改變邏輯而不需要重新組建模板,模板設計者可以改變模板而不影響到邏輯。