Intereting Posts
Как я могу аннулировать страницу в кеше браузера с клиентской стороны? PHP – как перевернуть строки и столбцы 2D-массива Проверьте, существует ли электронная почта php Хранимая процедура MySQL или сложный запрос Проверка Symfony2 не работает, когда Entity Relationships / Associations Просмотр RSS-ленты Как передать переменную php в имя класса синтаксиса html? Схват изображения с помощью cURL php Сообщение об ошибке echo pdo при вводе неверного имени пользователя или пароля Вывод исходного потока изображения, а не jpeg, изменение размера изображения Doctrine2: Невозможно выбрать сущность через идентификационные переменные, не выбирая хотя бы один псевдоним корня сущности Не удается установить файлы cookie в PHP? Замечание PHP: использование неопределенной константы Как загрузить файл с .ashx-страницы с помощью php? «Доступ запрещен для пользователя» после перемещения базы данных MySQL на удаленный сервер

Как отправить электронное письмо в utf8

Я хочу отправить сообщение об этом письме в кодировке utf8.

что я могу сделать для этого

include 'functions.php'; $name = stripslashes($_POST['name']); $email = trim($_POST['email']); $subject = stripslashes($_POST['subject']); $message = stripslashes($_POST['message']); $cap=strtoupper($_POST['cap']); $error = ''; $mail = mail(WEBMASTER_EMAIL,$subject,$message, "From: ".$name." <".$email.">\r\n" ."Reply-To: ".$email."\r\n" ."X-Mailer: PHP/" . phpversion()); 

что я могу отправить в utf8?

Related of "Как отправить электронное письмо в utf8"

Вы можете указать кодировку в заголовках электронной почты, например:

 $mail = mail(WEBMASTER_EMAIL,$subject,$message, "From: ".$name." <".$email.">\r\n" ."Reply-To: ".$email."\r\n" ."Content-type: text/html; charset=UTF-8\r\n" ."X-Mailer: PHP/" . phpversion()); 

Вы можете использовать функцию utf8_encode php. Вот так:

 $message = utf8_encode(stripslashes($_POST['message'])); 

Это сохранит строку utf8, закодированную в переменной $ message или любой другой.

Изменить :

Если вы используете библиотеку swiftmailer, по умолчанию будет использоваться кодировка utf8.

Вам нужно установить кодировку utf-8 в заголовках, а также закодировать тему, потому что она легко повреждается. Я лично создаю свою собственную функцию, которая также добавляет возможность установить адрес отправителя:

 function mail_utf8 ($to, $subject='', $message='', $from='', $header='') { if (preg_match("/\<html.*\>/i", $message)) $content_type = "html"; else $content_type = "plain"; $header .= "\nMIME-Version: 1.0"; $header .= "\nContent-type: text/$content_type; charset=UTF-8"; if ($from) $header .= "\nFrom: ".$from; mail($to, "=?UTF-8?B?".base64_encode($subject)."?=", $message, trim($header)); }