Example #1
0
//Se não for definida, a extensão deve ser informada no momento da chamada do arquivo.
define('HARGON_TEMPLATE_EXT', 'html');
//Definindo variável com o caminho root da aplicação.
$base_path = str_replace('\\public', '', __DIR__);
//Definindo variável com o caminho do arquivo do layout principal.
$layout_principal = $base_path . '\\views\\_shared\\layout';
//Definindo variável com o caminho do arquivo do layout interno.
$layout_interno = $base_path . '\\views\\index';
//Criando e armazenando layout interno em uma variável
$template_interno = new Template($layout_interno);
//Criando e armazenando layout principal em uma variável
$template = new Template($layout_principal);
//Adicionando o layout interno ao layout principal.
//No layout principal definimos a section conteúdo. => @section('conteudo')
//Podemos adicionar N layouts internos ao principal, basta criar novas sections.
$template->add_partial('conteudo', $template_interno);
//Setando valores ao bloco pessoas.
//Para isso precisamos enviar um array.
$template->block('pessoas', [['nome' => 'Maria', 'telefone' => '31 0000 1234'], ['nome' => 'Joao', 'telefone' => '31 1234 1234']]);
//Setando valores ao bloco contatos.
//Para isso precisamos enviar um array.
//Este bloco exemplifica a utilização de else no bloco. Caso não seja informado algum valor, ele exibe a mensagem.
$template->block('contatos', [['nome' => 'Lua Azul', 'telefone' => '31 1111 1234'], ['nome' => 'Lagoa Azul', 'telefone' => '31 2222 1234']]);
//Setando valores ao bloco usuários.
//Este bloco exemplifica como exibir uma variável @nome_variavel; Para isso é necessário informar um _ após o @.
$template->block('usuarios', [['nome' => 'Jose', 'telefone' => '31 0000 1234'], ['nome' => 'Rita', 'telefone' => '31 1234 1234']]);
//Setando valor a uma variável
$template->set('endereco', 'Ipatinga/MG');
//Outra maneira de setar valor a uma variável
$template->telefone = '31 0123-4500';
//Setando permissões. Os valores incluir, edite, entre outros devem ser os mesmos valores informados no arquivo do template.