Location: PHPKode > scripts > TagTemplate > tagtemplate/class_TagTemplate.php
<?php

/**
* Classe que retorna html a partir de um template php com marcações especiais
* @author Marcelo Soares da Costa
* @email phpmafia at yahoo dot com dot br
* @copyright Marcelo Soares da Costa © 2007/2008. 
* @license FreeBSD http://www.freebsd.org/copyright/freebsd-license.html
* @version 1.0
* @access public
* @package OOE
* @data 2008-07-30
*/
################################################################################
class TagTemplate{

/**
*
* Funcao que concatena em uma string o array de parametros
* @access protected
* @return string
*
*/

protected function array2string($param)
{
 $string=null;
 
 if($param!=null)
 {
  if(is_array($param))
   {
     foreach($param as $key=>$value)
     {
     $string.=" ".$key."=\"".$value."\"";
     }     
   }else{
   die("".$param." => Nao eh array");
   }
   return $string;
 }
}

/**
*
*  Funcao que abre uma tag genérica
* @access protected
* @return string
*
*/

protected function openTag($tag,$param=null)
{
  return "<".$tag.$this->array2string($param).">";
}

/**
*
*  Funcao que fecha uma tag genérica
* @access protected
* @return string
*
*/

protected function closeTag($tag){
  return "</".$tag.">\r\n";
}

/**
*
* Funcao que cria uma tag generica com conteudo
* @access public
* @return void
*
*/

final public function setTagContent($tagName,$tag,$content,$param=null){
  $this->_TAG[$tagName]=$this->openTag($tag,$param).$content.$this->closeTag($tag);
} 

/**
*
* Funcao que cria uma tag generica simples
* @access public
* @return void
*
*/

final public function setTagSimple($tagName,$tag,$param=null){
  $this->_TAG[$tagName]="<".$tag.$this->array2string($param)."/>\r\n";
} 

/**
*
* Importa um arquivo
* @access public
* @return puglin code
*
*/

protected function getTag($tagName){
  if(array_key_exists($tagName, $this->_TAG))
  {
  echo $this->_TAG[$tagName];
  }
}

/**
*
* Importa um arquivo
* @access public
* @return puglin code
*
*/

final public function plugin($arquivo){
  if (file_exists($arquivo)) {
   include_once($arquivo);
  }
}	

/**
*
* Importa o template 
* @access public
* @return buffer
*
*/

final public function useTemplate($template,$compress=5){
  if (file_exists($template)) {
   ob_start();
   include_once($template);
   $result = ob_get_contents();
   ob_end_clean();
   echo ob_gzhandler(trim($result),$compress);
  }else{
   die("Template not exists");
  }

}
// fim da classe
}
?>
Return current item: TagTemplate