プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
PHP、メールの件名をデコードする
結論から書くと「mb_decode_mimeheader()」を使えばデコードできます。

PHPでちょっくら受信メールの一覧を表示するプログラムを作っていたのですが、
件名が日本語の場合

=?ISO-2022-JP?B?GyRCJCIkIiQiJCIbKEI=?=

とかなっちゃっていてですね。
まぁ当たり前と言えば当たり前なのですが、デコードしてやる必要に迫られたのです。

ほんで、どーやれば良いの(--?

ふむふむ(--)

あっ、それだけっすか。

$subject = mb_decode_mimeheader($subject);

とかやれば、元に戻りました。
「mb_decode_mimeheader()」さんですね。
余談ですが、エンコードしたい場合は「mb_encode_mimeheader()」さんを使います。

あとは「Subject:」の部分を取っ払って、文字エンコードの変換をして

$subject = mb_decode_mimeheader($subject);
$subject = preg_replace("/^Subject:/", "", $subject);
print $i . ":" . mb_convert_encoding($subject, "SJIS-win", "auto") . "<br>";

ってな感じにして、完了\(--)/

特に難しいところは無いですが、日常的に使わないと忘れちゃいそうです(--;
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● PHP  thema:システム開発 - genre:コンピュータ  Posted by ササキマコト 

  関連記事