Ho un problema nell'uso della funzione eval per eseguire del codice php contenuto in una stringa.
io su db ho questo testo:
testo \" . citazione (\"ciao\") . \" testo
(esattamente come lo ho scritto, con le \).
Dove la funzione citazione è una mia funzione che mi formatta il testo in una maniera particolare.
Per far in modo che venga eseguita io utilizzo:

Codice PHP:
$d $riga['descrizione'];  
@eval (
"\$d = \"$d\";"); 
eval (
"echo \"$d\";"); 
(dove $riga['descrizione'] è presa dal db con una query)

E fin qui tutto bene la citazione() si esegue e il testo "ciao" si formatta come voglio io, ma se provo a cambiare la mia stringa ad esempio in:
<div class="normal">testo \" . citazione (\"ciao\") . \" testo</div>
oppure in
<div class=\"normal\">testo \" . citazione (\"ciao\") . \" testo</div>
ottengo sempre l'errore:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /xxx/xxx.php(105) : eval()'d code on line 1

mi sapete aiutare?