Cuando queremos convertir un texto a mayúsculas en php generalmente utilizamos la función strtoupper(). El problema con esta función es que cuando nuestro texto tiene acentos o eñes, dichos caracteres quedan en minúscula.
Para resolver este problema y curbrir todos los casos utilizamos la función mb_strtoupper():
$miTextoConvertido = mb_strtoupper($miTexto,'utf-8');