PHP mailtoリンクのタイトル文字化け対策

PHP

PHP mailtoリンクのデフォルトタイトルの文字化けを直す

HTMLのタグで、

 <a href="mailto:test@onlineconsultant.jp?subject=問い合わせ">

などと記述すると、タグにメールリンクが仕込まれ、ユーザーがリンクをクリックすると、ユーザー自身のメーラーが立ち上がり、件名に「問い合わせ」と入ります。

ただ、日本語の件名は文字化けしてしまう場合があるので、urlencodeする必要があります。
たとえば、PHPが使える環境でしたら、次のように出力しましょう。

 <a href="mailto:test@onlineconsultant.jp?subject=
 <?php 
    echo urlencode('問い合わせ');
 ?>">
 test@onlineconsultant.jp
 </a>

PHPファイルがUTF8だったりすると、SJISへ変換もする必要があります。
SJISへも変換したい場合は、次の通りです。

 //上記リンクのPHPの部分だけ抜粋
 echo urlencode(mb_convert_encoding('問い合わせ','SJIS','UTF-8'));
カテゴリーPHP

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です