- Модуль: mail
- Путь к файлу: ~/bitrix/modules/mail/lib/imap.php
- Класс: BitrixMailImap
- Вызов: Imap::encodeUtf7Imap
protected function encodeUtf7Imap($data)
{
if (!$data)
return $data;
$result = Encoding::convertEncoding($data, $this->options['encoding'], 'UTF7-IMAP');
if ($result === false)
{
$result = $data;
$result = Encoding::convertEncoding($result, $this->options['encoding'], 'UTF-8');
$result = str_replace('&', '&-', $result);
$result = preg_replace_callback('/[x00-x1fx7f-xff]+/', function($matches)
{
$result = $matches[0];
$result = Encoding::convertEncoding($result, 'UTF-8', 'UTF-16BE');
$result = base64_encode($result);
$result = str_replace('/', ',', $result);
$result = str_replace('=', '', $result);
$result = '&' . $result . '-';
return $result;
}, $result);
}
return $result;
}