Current File : //opt/RZphp74/includes/doc/HTML_Template_Sigma/docs/example_1.php |
<?php
/**
* Example of usage for HTML_Template_Sigma, basic variables and blocks
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.01 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_01.txt If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to license@php.net so we can mail you a copy immediately.
*
* @category HTML
* @package HTML_Template_Sigma
* @author Alexey Borzov <avb@php.net>
* @version CVS: $Id$
* @ignore
*/
/**
* Template class
*/
require_once 'HTML/Template/Sigma.php';
$listAry = array(
array('foo', 'bar'),
'stuff',
array('baz', 'quux'),
'more stuff'
);
// instantiate the template object, templates will be loaded from the
// 'templates' directory, no caching will take place
$tpl =& new HTML_Template_Sigma('./templates');
// No errors are expected to happen here
$tpl->setErrorHandling(PEAR_ERROR_DIE);
// default behaviour is to remove unknown variables and empty blocks
// from the template
$tpl->loadTemplateFile('example_1.html');
// 1. Variable substitution
// you can pass a name and a value to setVariable()
$tpl->setVariable('var1', 'Value 1');
// you can also pass an associative array
$tpl->setVariable(array(
'var2' => 'Value 2',
'var3' => 'Value 3'
));
// setGlobalVariable works the same
$tpl->setGlobalVariable('glob', 'I am global');
// 2. Empty/nonempty blocks
// 2.1 Non-empty blocks
$tpl->setVariable(array(
'var_ne_1' => 'Value for block 1',
'var_ne_2' => 'Value for subblock 2'
));
// 2.2 Empty blocks
$tpl->setVariable('var_e_2', 'Value for parent block');
// 3. Local/global difference
$tpl->setCurrentBlock('list');
foreach ($listAry as $item) {
if (is_array($item)) {
$tpl->setVariable(array(
'local_1' => $item[0],
'local_2' => $item[1]
));
} else {
$tpl->setVariable('local_1', $item);
}
$tpl->parseCurrentBlock();
}
// output the results
$tpl->show();
?>