【PHPMailer】メール送信の際の文字エンコードについて
PHPMailerを利用したメール送信について調べていたときに、
文字エンコードの指定を「ISO-2022-JP」にしているパターンと「UTF-8」にしているパターンの2種類を見かけました。
$mail = new PHPMailer(true); // ISO-2022-JPを使うパターン $mail->CharSet = "iso-2022-jp"; $mail->Encoding = "7bit"; // UTF-8を使うパターン $mail->CharSet = "UTF-8";
調べてみると、歴史的な理由から日本では「ISO-2022-JP」が使われてきたのですが、
現在は有名どころ含めメーラが「UTF-8」に対応してきているとのことです。
基本的に「UTF-8」を指定し、古いメーラに対応しなければいけない場合は「ISO-2022-JP」を指定するのが
よさそうです。
参考
日本語メールの仕組み | SendGridブログ
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版