sábado, 22 de março de 2014

PHP - Twig













Quem trabalha com PHP há algum tempo provavelmente conhece algum sistema de templates (template engines). Estes fornecem uma maneira fácil e prática de separar o código responsável pela lógica e o HTML (camada de apresentação). Esta separação torna a manutenção menos custosa, principalmente quando os programadores frontend e PHP não são os mesmos profissionais.

Existem inúmeras template engines disponíveis. O Twig se destaca por ser rápido, flexível, seguro, fácil de dominar e de sintaxe amigável. Este post mostra como criar seu primeiro template com o Twig.




Criando seu primeiro template com o Twig

Antes de mais nada, é preciso baixar a biblioteca e importá-la em seu projeto. Esta está disponível no Github. Através do Composer, é possível baixar as dependências:

 {  
   "require": {  
     "twig/twig": "1.*"  
   }  
 }  

Importe o arquivo Autoloader.php baixado e configure o diretório onde ficam os templates e o cache.

 require_once '/caminho/do/pacote/Autoloader.php';  
   
 Twig_Autoloader::register();  
   
 $loader = new Twig_Loader_Filesystem('/caminho/para/templates');  
   
 $twig = new Twig_Environment($loader, array(  
   'cache' => '/caminho/para/cache_de_compilacao',  
 ));  



Agora basta apresentar o template, informando os parâmetros:

 echo $template = $twig->loadTemplate('index.html')->render(  
      array(  
           'titulo'   => $titulo,  
           'conteudo' => $conteudo
      )  
 );  

Sendo o index.html:

 <h1>{{ titulo }}</h1>  
   
 <p>  
      {{ conteudo }}  
 </p>  



Existem várias IDEs que reconhecem arquivos twig e proporcionam autocomplete e text highlight


  • PhpStorm
  • Komodo e Komodo Edit via Twig highlight/syntax check mode


Para mais informações, acesse a documentação completa do Twig.


Nenhum comentário:

Postar um comentário