Originariamente inviato da ntd
...le due soluzioni si equivalgono...
In realtà ci sono delle differenze anche sostanziali tra i due approcci: eval() è un parser mentre str_replace() è una sostituzione. Per esempio, avendo '$porongo' come template ed una variabile $poro = 123, eval() restituirà una stringa vuota (o andrà in errore) mentre str_replace() restituirà '123ngo'.