Ok, no me ha ido tan bien, al usar mb_detect_encoding recibo en el servidor local "UTF-8", sin embargo en el servidor remoto me ocurre lo mismo que con mb_strtolower, o sea detiene su ejecución, intenté ponerle error_reporting(1) para que me diera algún mensaje, pero no pasó nada, no puedo revisar los logs de ese servidor, o al menos creo que no.
ahora estoy probando un tercer servidor, que también es remoto, increíblemente el resultado es distinto a los otros 2 casos, o sea ya van 3 servidores con distintos resultados.
CODIGO:
Código PHP:
header('Content-Type: text/html; charset=utf-8');
//mas codigo
echo "[".mb_detect_encoding($_SESSION['language'])."]:".$lan;
//mas codigo
$slang=utf8_encode($file);
$slangprint=ucfirst($slang);
echo $slangprint;
//el mb_strtolower está más abajo
SERVIDOR LOCAL:
-----------
[UTF-8]:espa�ol
Español
-----------
SERVIDOR REMOTO ALTERNATIVO:
-----------
[UTF-8]:espa�ol
Español
-----------
SERVIDOR REMOTO DEFINITIVO:
-----------
-----------