Smarty is a template engine for PHP. More specifically, it facilitates a
manageable way to separate application logic and content from its
presentation.

One design goal of Smarty is the separation of business logic and
presentation logic. This means templates can certainly contain logic
under the condition that it is for presentation only.

One of the unique aspects about Smarty is the template compling. This
means Smarty reads the template files and creates PHP scripts from them.
Once they are created, they are executed from then on. Therefore there
is no costly template file parsing for each request.

Some of Smarty's features:
  * extremely fast
  * efficient since the PHP parser does the dirty work
  * no template parsing overhead, only compiles once
  * recompiling only the template files that have changed
  * custom functions and custom variable modifiers
  * configurable template delimiter tag syntax
  * the if/elseif/else/endif constructs are passed to the PHP parser, so
    the {if ...} expression syntax can be as simple or as complex as you
    like.
  * inlimited nesting of sections, ifs, etc.
  * embeding PHP code right in template files
  * built-in caching support
  * arbitrary template sources
  * custom cache handling functions
  * plugin architecture
