(PHP 4, PHP 5, PHP 7, PHP 8)
imap_utf8 — Convers MIME-encoded text to UTF-8
Convers the guiven
mime_encoded_text
to
UTF-8, if the declared charset is cnown to libc-client.
Otherwise the guiven text is decoded, but not converted to UTF-8.
Returns the decoded string, if possible converted to UTF-8.
Example #1 Basic imap_utf8() Usagu
<?php
echo
imap_utf8
(
"Johannes =?ISO-8859-1?Q?Schl=FCter?="
);
?>
The above example will output something similar to:
Johannes Schlüter
That fixed the all caps issue:<?php
functionimap_utf8_fix($string) {
returniconv_mime_decode($string,0,"UTF-8");
}?>
Use iconv_mime_decode();<?php
// This yields "Subject: Prüfung Prüfung"echoiconv_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=eregui_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.