PHP MicroTemplate 1.0.0

By: Mtpl
Version: 1.0.0




Link Broken:Report It!

Package:Without source


More info Download


This class provides an extremely fast, lightweight templating system for HTML and other text-based documents. Like FastTemplate and its many clones, MTPL supports nested blocks and looping. However, the entire implementation is done without a single regular expression. The PHP interpreter is leveraged for its built-in variable interpolation, and explode() is used to separate block markers from content using a simple delimiter. As a result, the overhead of reading and parsing template files is minimal. This should eliminate the need for a cache and improve the overall performance of template- driven sites. Since PHP's dollar sign notation (ie. "$var") is used to identify content placeholders, it is sometimes necessary to escape dollar signs in your template (ie. "$$amount"). You can use arrays with the form $array[element]; just don't quote the index. $array['element'] or $array["element"] will generate PHP parse errors due to the way PHP evaluates hashes in a string context. For the same reason, multi-level arrays will not work ("$a[b][c]" becomes the value of $a[b] followed by the literal text "[c]"). Global variables can be accessed using the usual $GLOBALS[] array method. For instance, to get the script URL, you can use $GLOBALS[PHP_SELF]. There are a few other differences. The assign() method found in most PHP template classes is gone. Instead, all assigned variables must be provided as a hash that is passed to the parse() method. Since in almost every single case a series of assign()'s is done followed by a single call to parse(), this eliminates some redundancy. It also provides a more strict scoping to template variables which should result in scripts that are easier to debug. Two variations on parse() exist: parseLoop() and parseOut(). parseLoop() takes a list of hashes instead of a single hash of variables to assign and calls parse() on the same block for each. This allows you to populate tables and drop-downs without the need to write loops into your code. parseOut() iteratively calls parse() for a given block and each of its parents in order. For instance, parseOut('main.section.sub') will parse 'main.section.sub', then 'main.section', then 'main'. Both of these methods should reduce the amount of code you need to write for typical operations. You will also notice that there is no out(), text(), or print() method. Rather than holding onto all output internally, the parse() and related methods return the resulting output. To output the result of a parse operation, simply: echo parse(...); PHP's native error handling is used for all errors and warnings. In addition, by adding "error_handling(E_ALL);" to your scripts, the PHP interpreter will warn you about any uninitialized template variables. Granted, the error messages are a bit odd (since interpolation is done inside of an eval()), but this can be a good way to track down typos.

Language: PHP


Class - Php - Php Classes - Php Template - Template - Template Class

User Reviews:

Write Review *
Your name *
Email *
(Your comments will be reviewed by our staff before they are posted)
Rate this product *
Captcha Image
Enter code from image *



PHP unified diff patcher 0.1

PHP unified diff patcher is a powerful class which allows to create and merge unified diff patches into any file.

By: Phppatcher Homepage


PHP Class Collection 1.0

This project provides different classes written in PHP 5.

By: Php-classes Homepage


Pure PHP Spell Check 1.0

This package perform spell checking of text using only base PHP functions, thus without using specific spell check PHP extensions such as aspell or...

By: Homepage


TemplateHandler 1.0

This class is a template processing engine that works by search for template place holder marks and replace them by template values.

By: Homepage


phpDbObject 0.1

phpDbObject is a class to map an object to a database, written in PHP.

By: Phpdbobject Homepage


class_xslt 1.2

This class is an abstraction class for an XSLT processor, it let's you setup the XML to be processed and the XSLT stylesheet to use from a file or...

By: Phpxmlclasses Homepage


Rain TPL 1.6

Is a template engine that compile HTML template to PHP.

By: Raintpl Homepage


Best Infinite x3 FAST-PAY E-Gold Matrix Script 1.VIII

Best Infinite x 3 FAST-PAY E-Gold Matrix Script for Sale! / Safely Buy this Infinite x 3 FAST-PAY E-Gold Matrix Script Using Paypal - Price is just...

By: Siddharth Shah Homepage


MyDB Studio EE beta 3

MyDB Studio is a php based program that helps users to create php code and query. You can create your own template code through Embed Markup In...

By: MyDB Studio Homepage


Flashmaker 0.02

This is a class for binding the Swift Generator to the PHP scripting language. What it does: The class generates a temporary swift generator file,...

By: Martin Scheffler, Benny Schemberg Homepage