Preprocesador

Recuerdo que montamos esta parte en el mod intentando asi emular a lo que hacia php. El sistema nos permite tener páginas mas dinámicas y podemos facilmente insertar código harbour en tiempo de ejecución

<h2>Home</h2><hr>

Welcome. Now is {{ time() }} . 

En php seria:

<h2>Home</h2><hr>

Welcome. Now is <?= time() ?> .

Ahora podemos ejecutar la función que tengamos en los tags {{ ... }}. Esto hace que nuestro servidor preprocese antes de enviar la página, la función que tenemos encerrada entre los tags.

De la misma manera y a semejanza de php podemos crear los tags <?prg ... ?> . Esto nos permiste construcciones de este tipo:

<!DOCTYPE html>
<html lang="en">
<h2>Preprocesor example...<h2><hr>

<?prg
    local a     := time()
    local cHtml := '<ul>'
    local n 
    
    for n := 1 to 5
        cHtml += '<li>Item ' + ltrim(str(n)) + ' => ' + a + '</li>'
    next
    
    cHtml += '</ul>'
    
    retu cHtml
?>

<hr> 

En php seria asi:

<!DOCTYPE html>
<html lang="en">
<h2>Preprocesor example...</h2><hr>

<?php
    $a         = date( 'H.i:s' );
    $cHtml     = '<ul>';
    
    for ($n = 1; $n <= 5; $n++) {
        $cHtml .= '<li>Item ' . $n . ' => ' . $a . '</li>';
    }
    
    $cHtml .= '</ul>';
    
    echo $cHtml ;
?>

<hr>

La única condición es que se devuelva una cadena.

Como podeis observar el concepto es el mismo por lo que podemos trabajar de la misma manera si ningún problema.

Estos 2 tipos de tags nos da una flexibilidad brutal a nuestras página y en muchas ocasiones nos facilitará de una manera sencilla la codificación de una página.












Comentarios