io uso forse il metodo piu' semplice ma anche , credo, il piu' veloce.

Mi faccio un output su un file .html, su questo file inserisco le parti sensibili tipo:

{title}
{menu}
{div1}
{div2}
{footer}

per farti un esempio ...

poi man mano che creo lo script , in base a quanto so di trovare nel file .html ed in base all' ordine alto -> basso , creo un array per l' output:

$outputreplace = Array( 'titolo', 'contenuto menu', 'testo in div1', 'testo in div2', 'testo in footer' );

ovviamente questo array deve corrispondere a quello creato precedentemente, ovvero:

$outputfind = Array( '{title}', '{menu}', '{div1}', '{div2}', '{footer}' );


quando ho tutto faccio semplicemente:


echo str_replace( $outputfind, $outputreplace, file_get_contents( 'timplate.html' ) );


str_replace strabatte qualunque eval, preg o altro



esempio
sul timplate