Что может быть причиной этой проблемы кодирования? Я правильно кодирую информацию заголовка или это может быть вызвано где-то еще?
Я нашел похожую проблему здесь: Письмо от PHP сломало кодировку заголовка темы , но из того, что я читаю, я думаю, что я делаю это правильно.
Обычно наши клиенты отправляют электронные письма на французском языке. Это работает, но время от времени у нас возникают проблемы с кодировкой, и мне интересно, правильно ли я сделал кодировку (не могу понять).
$from = '=?UTF-8?B?'.base64_encode($email['from_name']).'?= <'.$email['from_email'].'>';
$to = '=?UTF-8?B?'.base64_encode($email['to_name']).'?= <'.$email['to_email'].'>';
$get_param = array(
'Content-Type' => 'text/plain;charset=utf-8',
'Content-Transfer-Encoding' => '8bit');
Код выше показывает, как я кодирую информацию в заголовке, а ниже - отправку:
$msg = $message_mime->get($get_param);
$headers = array (
'From' => $from,
'To' => $to,
'Reply-To' => $from,
'Subject' => utf8_decode($subject));
$headers = $message_mime->headers($headers);
$smtp = Mail::factory('smtp',
array ('host' => $smtp_settings['host'],
'auth' => true,
'username' => $smtp_settings['username'],
'password' => $smtp_settings['password']));
$mail = $smtp->send($to, $headers, $msg);
Проблема в том, что полученное письмо было отправлено:
Clientnamé de l'Ontario[=?UTF-8B?QXNzZW1ib(...)=?=]
Спасибо за любую помощь:)
Редактировать: имя клиента в основном использует те же символы, что и выше. Я имею в виду, что электронное письмо должно было быть от "Clientnamé l'Ontario"