Ehm, forse non mi sono spiegato bene.

Il mio problema non è la gestione dell'accento dritto ' . Con quello funziona già tutto perfettamente. Il problema sono gli altri tipi di accenti, come ’ o ‘ o ancora `.
Sono questi che non riesco a trasformare nell'accento normale, nonostante tenti di farlo con str_replace()

Non credo che htmlspecialchars() mi sia d'aiuto in questo caso...