Ola novamente, ora não entendo também o porque, mas de qualquer forma imagino que será algo na configuração do servidor, enfim de qualquer forma vou-te sugerir nova forma de fazer o mesmo, esta será considerando que em PHP uma string é um array de caracteres, o que iremos fazer será percorrer um ciclo For, que irá acabar no último caractere da string e irá somar 1 valor a cada minúscula ou maíuscula, então fazêmo-lo da seguinte forma:
<?php
function contMaiusculas($string){
$contagem = 0;
for($i = 0; $i <= (strlen($string)) - 1; $i++){
if(ctype_upper($string[$i])){
$contagem++;
}
}
return $contagem;
}
$altContagem = contMaiusculas("HÉllo WoRld!E");
echo $altContagem;
?>
Penso que o código seja suficientemente simples para entender o que se passa ai, espero que assim já dê, caso contrário imagino que será o teu servidor que estará com alguma configuração desactualizada, talvez com a função "ctype".
de qualquer forma espero que tenha ajudado mais alguma coisa.