0

Classe PHP para controlar template

criado por Jefrey em 16/01/2014 6:40am
Essa simples classe PHP serve como template engine em pequenos projetos e CMS, para separar o HTML do PHP.

Exemplo de uso:
<?php
include 'classes/tpl.class.php';
$tpl = new tpl;
$tpl->template('exemplo');
$tpl->set('variavel', 'exemplo de valor');
$tpl->show();

No caso do exemplo acima, será criado dentro do diretório "tpl/" um arquivo de nome "exemplo.tpl" com o seguinte conteúdo:
<!DOCTYPE html>
<html>
<meta charset="utf-8" />
<title>Teste</title>
</head>
<body>Valor: {variavel}</body>
</html>
Note que o {variavel} é substituído por "exemplo de valor".

Também é possível fazer includes. Exemplo:
tpl/header.tpl
<!DOCTYPE html>
<html>
<meta charset="utf-8" />
<title>{titulo} - Teste</title>
</head>

tpl/page.tpl
{inc(header)}
<p>{texto}</p>

index.php
<?php
include 'classes/tpl.class.php';
$tpl = new tpl;
$tpl->template('page');
$tpl->set('titulo', "Hello world");
$tpl->set('texto', "Lorem ipsum dolor sit amet");
$tpl->show();

--------

Para definir estáticas (como por exemplo o título do site), você pode criar uma função referenciando a variável:
<?php
function estaticas(&tplobj) {
  $tplobj->set('titulo_site', "Exemplo de site");
}
E chamá-la a qualquer momento após instanciar a classe:
<?php
include 'classes/tpl.class.php';
include 'estaticas.php';

$tpl = new tpl;
$tpl->template('teste');
estaticas($tpl);
$tpl->show();
Data Autor Changelog Download Deletar
16/01/2014 6:40am Jefrey - Versão 1.0

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)