A Fast Template é uma classe muito eficiente na utilização de modelos para scripts PHP. Ela nos permite ganho de tempo e facilita em muito a tarefa do web designer, que deixa de ter acesso aos códigos PHP do site, ou seja, o código HTML fica totalmente separado dos scripts PHP. Porém agora ela suporta o uso de cache e tags PHP em seus blocos.
Meu objetivo aqui não é falar sobre como utilizar a Fast Template,
pois vários artigos publicados aqui no Viva o Linux já explicaram
exaustivamente a sua utilização para vários fins:
Aqui e nos vários fóruns de discussão que pesquisei sobre templates
sempre vi uma certa "briga" entre fãs da Fast Template e fãs
da Smarty. Os que utilizavam a Fast Template salientavam sua
simplicidade como ponto forte e os que utilizavam a Smarty a possibilidade
da utilização de tags em blocos dinâmicos e suporte a cache.
Fiquei tão surpreso quando vi que a classe em questão mesmo sendo tão útil,
simples e tão utilizada não suportava cache, que então resolvi eu mesmo
implementar tais funções e disponibilizar aqui um exemplo e o código da
classe.
1° Crie um diretório "./cache" antes de prosseguir com a
criação dos arquivos abaixo:
<!-- programa index.php -->
<?php
include "FastTemplate.class.php";
// Inicializando a Fast template setando ./html como dir dos seus modelos
$template = new FastTemplate('./html');
// Substituindo em {DATA_ATUAL} a string da data atual
$data = date("d/m/Y");
$template->assign('{DATA_ATUAL}',$data);
// Substituindo em {HORA} a função de retorno de hora atual
// para geração um cache dinâmico
$template->assign('{HORA}','<?=date("H:i:s")?>');
// atribui ao handle OUTPUT a saída do processamento do modelo
$template->parse('OUTPUT','pagina');
// imprime na tela o conteúdo de OUTPUT
$template->FastPrint('OUTPUT');
?>
<!-- fim programa -->
<!-- ./html/index.htm -->
<HTML>
<BODY BGCOLOR="#ffffff">
<h2>Um Simples Modelo para uso de cache</h2>
A data de hoje é: {DATA_ATUAL}<br>
E a hora: {HORA}
</BODY>
</HTML>
<!-- fim do modelo -->
NOTA: Essa versão da Fast Template não é "bug-free", ou seja, ainda não foi
testada exaustivamente, mas como o código dela está ai, caso precise de
modificações (se encontrar algum bug), por favor publiquem a correção na
sessão Scripts do Viva o Linux.
[1] Comentário enviado por Ragen em 11/10/2003 - 22:56h
Recebi alguns e-mails com pessoas que estavam com dúvidas sobre a portalidade da nova classe...
E é verdade, não deixei claro, mas a Fast Template 1.2.0 funciona EXATAMENTE igual a 1.1.0 sem o uso da funcao USE_CACHE(), ou seja, a opção de cache são funções anexas a classe que só funciona SE e somente se a funcao de ativação de cache for executada.