Usando cache na classe Fast Template
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.
Usando cache na classe Fast Template
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:
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:
- Organizando projetos com a classe FastTemplate (parte 1)
- Organizando projetos com a classe FastTemplate (parte 2)
- Usando Blocos Dinâmicos com a Classe FastTemplate
- Usando Blocos Dinâmicos com a Classe FastTemplate
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');
// Setando o uso de cache
$template->USE_CACHE();
$template-> define (
array (
'pagina' => 'index.htm'
)
);
// 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 -->
<?php
include "FastTemplate.class.php";
// Inicializando a Fast template setando ./html como dir dos seus modelos
$template = new FastTemplate('./html');
// Setando o uso de cache
$template->USE_CACHE();
$template-> define (
array (
'pagina' => 'index.htm'
)
);
// 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 -->
<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.
[]`s
Ragen
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.
[]`s
Ragen