@mailをPHPに送信する際のエンコードの問題

最近、gMailメッセージ(および他のメッセージ)を送信するときに問題が発生しました。キリル文字で書かれた私の手紙を正しく表示できませんでした。

私はインターネットに登ったが、そこでこの質問はすでに提起されており、解決策が提案された。 自分で処理した後、ここにも置くことにしました。 私はあなたの何人かのためにそれがまた役に立つかもしれないと思う:



//トリム関数は、先頭と末尾のスペースを削除します

$ title = htmlspecialchars(trim($ _ POST ['title']));

$ mess = htmlspecialchars(trim($ _ POST ['mess'));



//変換

$ title = '=?koi8-r?B?'。base64_encode(convert_cyr_string $ title、 "w"、 "k"))。 '?=';

$ to = 'some_main@gmail.com';

$ head = "Content-Type:text / plain; \ r \ n";

$ head。= "X-Mailer:PHP /"。phpversion()。 "\ r \ n";

$ head。= "返信先:admin@gmail.com \ r \ n";

$ head。= "To:$ name <$ to> \ r \ n";

$ head。= "From:admin@gmail.com \ r \ n";

$ head。= "Subject:$ title \ n";



//送信

メール($ to、$ title、$ mess、$ header);



脅威。 私はそれが便利になることを願っています!



All Articles