quel meta tag è per il browser, io ti dico proprio il file php è salvato in formato UTF-8

ora, anche se non c'è nessun'impedimento nell'usare un UTF-8 in file php, personalmente preferisco evitare perché potrebbero sorgere altri problemi

per fare il lavoro che ti serve a te, basterebbe una preg del tipo

Codice PHP:
function stringa($stringa)
{
    
$stringa str_replace(array('à''è''ò''ì''ù'), array('a''e''o''i''u'), trim(utf8_decode($stringa)));
    
$stringa preg_replace('/[^A-Z0-9_]/i''_'$stringa);
    
$stringa preg_replace('/_+/i''_'$stringa);
    
    return 
$stringa;

Il primo str_replace accomuna tutto, il secondo preg_replace fa saltare tutto quello che non è lettera ed il terzo elimina le ripetizioni di _ (ps, preferisco però usare il - al posto di _)

PS: ovviamente il file va codificato non UTF-8 se si mette l'utf8_decode ^^