Constrói um documento a partir de um modelo com marcações “ecolabore”.
render_tags ($template, &$render);
Argumentos:
- $template: o modelo com marcações a serem processadas.
- $render: um array passado por referência onde deverão constar:
- $render[‘scope’]: um array com o conteúdo do documento;
- $render[‘buffer’]: uma string onde o documento resultante será montado.
Dependências:
Para cada marcação, será verificada a existência de uma função correspondente (com o prefixo “tag_”). Por exemplo: [text] => tag_text().
- condition() – verifica as expreções das marcações [if:…] e [elseif:…].
- tag_text(), atende à marcação [text:…]
- text2html()
- filter_html()
Esta função não retorna nenhum valor. (O documento resultante estará em $render[‘buffer’]).
Exemplo 1: Utilizando render_tags()
<?php
// O modelo
$template = '<html lang="[$lang]">
<head>
<title>[$title]</title>
<body>
<h1>[$title]</h1>
<p>[$content]</p>
</body>
</html>
';
// O conteúdo do documento
$render['scope'] = array (
'lang'=>'pt',
'title'=>'Um documento',
'content'=>'Olá mundo'
);
// O documento resultante
$render['buffer'] = '';
render_tags ($template, $render);
print $render['buffer'];
?>
Observações:
- render_tags() pode fazer muito mais que simplesmente inserir conteúdos. Porém, isto dependerá de funções coadjuvantes que veremos adiante.