• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/classes/general/mail.php
  • Класс: CMailHeader
  • Вызов: CMailHeader::DecodeHeader
function DecodeHeader($str, $charset_to, $charset_document)
{
	do
	{
		$n = 0;
		$str = preg_replace('/(=?.*??(?:B|Q)?.*??=)s+((?1))/i', '12', $str, -1, $n);
	}
	while ($n > 0);

	$handler = function ($m) use ($charset_to)
	{
		return CMailHeader::convertHeader($m[1], $m[2], $m[3], $charset_to);
	};

	$n = 0;
	$str = preg_replace_callback('/=?(.*?)?(B|Q)?(.*?)?=/i', $handler, $str, -1, $n);

	if ($n == 0 && $charset_document <> '')
	{
		$str = CMailUtil::convertCharset($str, $charset_document, $charset_to);
	}

	return $str;
}