€ non è un carattere contemplato dall'uft8, in una normale pagina HTML caratteri come € e le lettere accentate è bene sostituirli con le corrispondenti entità HTML (che in teoria anche Flash riconosce ma non ne sono sicuro).

Prova a usare str_replace per trasformare € nella sua entità HTML € prima di usare utf8_encode;
Codice PHP:
$stringa=str_replace("€","€",$stringa);
utf8_encode($stringa); 
Se vuoi codificare tutte le entità HTML usa html_entities però tieni presente che codifica anche i simboli < e >, per cui se devi scrivere codice html i tag vengono "distrutti":
Codice PHP:
$stringa=html_entities($stringa);
utf8_encode($stringa);