0

Conteudo Dinâmico com Smarty e Array

criado por Gustavo S. Carneiro em 18/03/2007 8:52am
Vejamos um simples exemplo de utilização da biblioteca Smarty:

arquivo index.php
<?php
// carrega a biblioteca do Smarty 
require('smarty/Smarty.class.php');

$smarty = new Smarty; 

$smarty->template_dir = '/diretoriohome/exemplo/templates/';
$smarty->compile_dir = '/diretoriohome/exemplo/templates_c/';
$smarty->config_dir = '//diretoriohome/exemplo/configs/'; 
$smarty->cache_dir = '/diretoriohome/exemplo/cache/';

$smarty->assign('Titulo','Exemplo Smarty');
$smarty->assign('Nome','Gustavo Soares');
$smarty->display('index.tpl');
?>

No arquivo de exemplo index.php, instanciamos um novo objeto $smarty, definimos os diretórios:

template_dir
compile_dir
config_dir
cache_dir

isso para que a Smarty possa ler e compilar o seu template e até mesmo fazer cachê caso você habilite esta opção.

Logo abaixo utilizamos o método "assign" que é utilizado para setar valor a uma variavel que será enviada ao template.

A sintaxe padrão dela é:
$smarty->assign('NomeVariavel','Valor da Variavel');

A linha
$smarty->display('index.tpl');
utiliza o método display, onde você especifica qual será o arquivo de template do seu script.

- -

arquivo index.tpl
<html>
<head>
    <title>{$Titulo}</title>
</head>
<body>
    <h3>Olá, {$Nome}!</h3>
</body> 
</html>

Observe que temos um simples arquivo HTML.

Note que na tag &lt;title> temos um valor {$Titulo}. Se você voltar no arquivo index.php, veja que atribuímos um valor "Exemplo Smarty" à variável de template "Titulo". Quando executarmos este arquivo index.php no servidor, na barra de titulos aparecerá o valor "Exemplo Smarty", porque ele pegará essas informações no arquivo de template.

O mesmo acontece com a variável "Nome": ela aparecera na frase: Olá, {$Nome}! que na exibição mostrará: Olá, Gustavo Soares!

Viu como é facil?
Partiremos agora para a utilização de um conteúdo dinâmico dentro da smarty utilizando array, o que é o objetivo deste artigo.

Comentários:

Mostrando 1 - 1 de 1 comentários
gostei do artigo...
13/06/2007 12:13am (~17 anos atrás)

Novo Comentário:

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