Mh non ho capito bene dove vedi questi caratteri, se sul db o sulle pagine html.
A regola dipende da php, PHP si prende cura nella risposta di effettuare la riconversione. Se invece ti riferisci al tuo DB, deve accettare UTF-8.
Mi pare di capire che il problema a cui sei andato incontro POTREBBE essere più vasto: il tuo server e il tuo php e il tuo DB (o almeno qualcuno di questi) non è settato per l' utf-8 o almeno potrebbe trattarsi di questo.
SET NAMES 'utf8' COLLATE 'utf8'
SET CHARACTER_SET 'utf8'
sono istruzioni che il tuo DB dovrebbe passare a php charset sql - potrebbe dipendere da questo, come da altro, non so dovrei conoscere cose del tuo server che non conosco.