Tengo una duda que me aqueja, tengo un sistema de plantillas:
Código PHP:
<?php
class TemplateClass{
private $_dir = 'template/';
private $_file_ext = '.tpl';
private $_vars = array();
private $_delimiters = array('{', '}');
public function Assign($name, $value){
if(!array_key_exists($name, $this->_vars))
$this->_vars[$name] = $value;
}
public function GetAssign($name){
return $this->_vars{$name};
}
public function Template($file){
if( $output = @file_get_contents($this->_dir.$file.$this->_file_ext)){
foreach($this->_vars as $name => $value){
$output = str_replace($this->_delimiters[0].$name.$this->_delimiters[1], $value, $output); //recorremos todo el archivo para cambiar las palabras con los delimitadores a su respectiva traduccion
}
return $output;
}
else
die("La plantilla no existe.");
}
}
?>
Su funcionamiento es bastante simple:
Código PHP:
$plantilla = new TemplateClass();
$plantilla->Assign("variable","Hola Mundo");
echo $plantilla->Template("plantilla.tlp");
De antemano muchas gracias.