=?邮件主题中的Utf-8

  • 本文关键字:Utf-8 php email phpmailer
  • 更新时间 :
  • 英文 :


如何编辑我的函数来摆脱

" B = utf - 8 ? ?0JfQsNC60LDQtyDQstGL0L/QuNGB0LrQuCBkb2xzbm93ICIgM9C00LDQtNCw ?= "。"

在邮件主题?

这个函数(EncodeHeader)是邮件消息的编码头,需要以某种方式进行更正。代码如下所示:

public function EncodeHeader($str, $position = 'text') {
$x = 0;
switch (strtolower($position)) {
  case 'phrase':
    if (!preg_match('/[200-377]/', $str)) {
      // Can't use addslashes as we don't know what value has magic_quotes_sybase
      $encoded = addcslashes($str, "..37177\"");
      if (($str == $encoded) && !preg_match('/[^A-Za-z0-9!#$%&'*+/=?^_`{|}~ -]/', $str)) {
        return ($encoded);
      } else {
        return (""$encoded"");
      }
    }
    $x = preg_match_all('/[^404143-133135-176]/', $str, $matches);
    break;
  case 'comment':
    $x = preg_match_all('/[()"]/', $str, $matches);
    // Fall-through
  case 'text':
  default:
    $x += preg_match_all('/[00-10131416-37177-377]/', $str, $matches);
    break;
}
if ($x == 0) {
  return ($str);
}
$maxlen = 75 - 7 - strlen($this->CharSet);
// Try to select the encoding which should produce the shortest output
if (strlen($str)/3 < $x) {
  $encoding = 'B';
  if (function_exists('mb_strlen') && $this->HasMultiBytes($str)) {
    // Use a custom function which correctly encodes and wraps long
    // multibyte strings without breaking lines within a character
    $encoded = $this->Base64EncodeWrapMB($str);
  } else {
    $encoded = base64_encode($str);
    $maxlen -= $maxlen % 4;
    $encoded = trim(chunk_split($encoded, $maxlen, "n"));
  }
} else {
  $encoding = 'Q';
  $encoded = $this->EncodeQ($str, $position);
  $encoded = $this->WrapText($encoded, $maxlen, true);
  $encoded = str_replace('='.$this->LE, "n", trim($encoded));
}
$encoded = preg_replace('/^(.*)$/m', " =?".$this->CharSet."?$encoding?\1?=", $encoded);
$encoded = trim(str_replace("n", $this->LE, $encoded));
return $encoded;
}

我听说必须编码的字符不能放在引号里。

这个东西工作得很好,像这样的消息"这是新的工作主题",但这不是"рабочий инструмент"崩溃。

http://swiftmailer.org/试试这个会对你有帮助。它处理所有的编码

相关内容

  • 没有找到相关文章

最新更新