case 'encodeheader': $result = ''; if (strlen($ret) > 0) { $tmpstr = mb_substr($ret, 0, 1); $prevcsize = strlen($tmpstr); for ($i = 1; $i < mb_strlen($ret); $i++) { $tmp = mb_substr($ret, $i, 1); if (strlen($tmp) == $prevcsize) { $tmpstr .= $tmp; } else { if ($prevcsize == 1) { // mistake, two atoms combined without space $result .= $tmpstr; } else { $result .= str_replace(' ', '', mb_encode_mimeheader($tmpstr,'iso-2022-jp','B','')); } $tmpstr = $tmp; $prevcsize = strlen($tmp); } } if (strlen($tmpstr)) { if (strlen(mb_substr($tmpstr, 0, 1)) == 1) // two atoms combined without space $result .= $tmpstr; else $result .= str_replace(' ', '', mb_encode_mimeheader($tmpstr,'iso-2022-jp','B','')); } } $ret = $result; break; case 'decodeheader':