It sports all of the features of Savant2, but with a modified default plugin set and a modified filter system. In addition, it runs cleanly under E_ALL and E_STRICT error reporting.
Savant by default doesn't compile templates into PHPcode, but uses PHP itself as a general template language.
This eliminates the need for developers to learn a new markup system.
Savant has an object-oriented system of template plugins and output filters so the developer can add to its behavior quickly and easily.
Savant has an extensible error handling system. While Savant uses its own minimalist error class out-of-the-box, it supports PEAR_Error and PEAR_ErrorStack, as well as PHP5 exceptions.
The user can also add his own error classes to support his favorite framework error system.
Error-handling hooks are provided in the standard Savant class.
Even though Savant does not come with one, you can write your own customized markup compiler and hook it into Savant.
This means the developer can invent any markup system he likes; as long as the compiler turns it into a PHP script, Savant will be able to use it.
As with the error handler, you don't need to extend Savant itself to do this; compiler hooks are provided in the standard Savant class.
What's New in This Release: [ read full changelog ]
· Modify __toString method signature for compatibility with PHP 5.3.
· No parameters should be sent. If you need to send a template parameter, use fetch($tpl) or setTemplate($tpl) then echo $savant. Thanks, Dan Bettles.
· Add public method getOutput($tpl = null) which will return the output including error_text if an error occurs.