That fixed the all caps issue:
<?php
function imap_utf8_fix($string) {
  return iconv_mime_decode($string,0,"UTF-8");
}
?>(PHP 4, PHP 5, PHP 7, PHP 8)
imap_utf8 — Convertit du texte au format MIME en UTF-8
   Convertit le texte mime_encoded_text en UTF-8,
   si le jeu de caractères déclaré est connu de libc-client.
   Sinon, le texte founi sera décodé, mais pas converti en UTF-8.
  
mime_encoded_textUne chaîne de caractères encodé MIME. Les spécifications de MIME et UTF8 sont décrites dans les » RFC2047 et » RFC2044.
Retourne la chaîne de caractères décodé et si possible, converti en UTF-8.
Exemple #1 Utilisation de base de la fonction imap_utf8()
<?php
echo imap_utf8("Johannes =?ISO-8859-1?Q?Schl=FCter?=");
?>Résultat de l'exemple ci-dessus est similaire à :
Johannes Schlüter
That fixed the all caps issue:
<?php
function imap_utf8_fix($string) {
  return iconv_mime_decode($string,0,"UTF-8");
}
?>Use  iconv_mime_decode();
<?php
// This yields "Subject: Prüfung Prüfung"
echo iconv_mime_decode("Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=",
                       0, "ISO-8859-1");
?>
http://php.net/manual/de/function.iconv-mime-decode.php# this script are correct with the right signs remove expression
# please, ignore the later.
function decode_utf8($str){
       # paterns
           $err="(=\?.{10,13}q\?_?|\?\=)";
           $pat = "/=([0-9A-F]{2})/"; 
           $cha="'.chr(hexdec(";
       # erase null signs in string
          $str=eregi_replace($err,"",$str);
       # to decode with eval and replace
          eval("\$str='".
                  preg_replace($pat,$cha."'$1')).'",$str)
                  ."';");
        # return
           return $str;
} 
#Note: you can to reduce this script in 3 lines.