Originariamente inviato da Kloaz
conoscevo str_replace() ma cercavo un modo per evitare una specie di parsing manuale, pensa se avessi 10 variabili, dovrei fare 10 str_replace...
con eval() è una sola istruzione
Non è necessario fare più di una chiamata a str_replace(): il seguente codice sostituisce TUTTE le variabili definite.

Codice PHP:
$template '....';

foreach(
get_defined_vars() as $_name => $_value) {
    
$template str_replace('$'.$_name$_value$template);

Il problema di eval() è che è un comando significativamente lento: se il template che usi è grande o complesso oppure se lo richiami parecchie volte, str_replace() è molto più rapido. Per cose semplici, le due soluzioni si equivalgono (anche se personalmente ritengo str_replace() più "corretta").