PHP - специальные символы - PullRequest
       21

PHP - специальные символы

0 голосов
/ 23 января 2012

Я пытаюсь отправить эти символы через PHP:

áéíóúüchlñÁÉÍÓÚÜCLÑ

Они отображаются в полученном электронном письме так:

áà © Ãóúüchlà ± ааааа

Я попробовал htmlentities, но безуспешно:

$newsubject = htmlentities($subject, ENT_COMPAT, "UTF-8");
mail($notes,$newsubject,$message,$headers);

У кого-нибудь есть идеи, что я могу попробовать? Спасибо

Ответы [ 3 ]

2 голосов
/ 23 января 2012

Я думаю, вам нужно использовать MIME (Multipurpose Internet Mail Extensions).

Добавьте заголовки вашей почты следующим образом:

MIME-Version: 1.0
Content-Type: text/plain;charset=utf-8
0 голосов
/ 23 января 2012

Вы пытаетесь отправить их как UTF-8, но ваш PHP обрабатывает их как latin-1.

Вызовите utf8_encode для входной строки, чтобы снова обработать ее как UTF-8.

РЕДАКТИРОВАТЬ: Неправильный вопрос. Добавьте заголовок к электронному письму, которое вы отправляете:
Content-Type: text/plain; charset=utf-8

0 голосов
/ 23 января 2012

Ваш набор символов неверен для самих символов.Попробуйте это: (Windows) Скопируйте и вставьте эти символы с сайта с набором символов UTF-8 обратно в ваше приложение.Убедитесь, что ваш документ UTF-8 и подпись спецификации отключена.

...