PHP mail () не может найти решение для акцентов в содержимом сообщения - PullRequest
0 голосов
/ 31 мая 2018

Я перепробовал много предложенных решений по этому поводу, но все еще не могу найти то, которое работает.Письмо успешно отправлено, но акценты в html-коде.

Это мой код для содержимого электронной почты:

        $to_APPLICATION_RECEIVER = "w@z.ca";
        $from_APPLICATION_RECEIVER = "x@y.com";
        $subject_APPLICATION_RECEIVER = "Subject";
        $headers_APPLICATION_RECEIVER = 'From: "people" <x@y.com> \r\n';
        $headers_APPLICATION_RECEIVER .= 'Reply-to: x@y.com \r\n';

        //define boundary
        $semi_rand = md5(time());
        $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

        //tell header about $mime_boundary
        $headers_APPLICATION_RECEIVER .= "\nMIME-Version: 1.0\n";
        $headers_APPLICATION_RECEIVER .= "Content-Type: multipart/mixed;\n";
        $headers_APPLICATION_RECEIVER .= " boundary=\"{$mime_boundary}\"";

        //Message section
        //$message = utf8_decode($message);
        $message_hed_APPLICATION_RECEIVER ="\n\n--{$mime_boundary}\n";
        $message_hed_APPLICATION_RECEIVER .="Content-Type: text/plain; charset=\"UTF-8\"\n";
        $message_hed_APPLICATION_RECEIVER .="Content-Transfer-Encoding: 8bit\n\n" . $message . "\n\n";
        $message_hed_APPLICATION_RECEIVER .= "--{$mime_boundary}\n";

Содержимое $message, отображаемое var_dump, равно "sfdféèî", нополученное сообщение электронной почты: sfdf&eacute;&egrave;&icirc;.Может ли кто-нибудь помочь мне с этим?Я пробовал utf8_decode() и многие другие предложения на форумах, но все же это не работает.Спасибо за вашу помощь, ребята.

1 Ответ

0 голосов
/ 31 мая 2018

Если вы посмотрите источник страницы, вы увидите, что ваша строка на самом деле содержит содержит html-сущности.var_dump() намекает на то, что это так:

string(27) "sfdféèî"

Вы можете преобразовать сущности обратно в UTF8 с помощью:

html_entity_decode('sfdf&eacute;&egrave;&icirc;')

Что дает:

string(10) "sfdféèî"
...