携帯からきたメールを WEB アプリで扱ったときに特定の文字が化ける現象
なんか、そんな話だ。xxxps とか wxrdprxss とかが関係しているらしいから php な話だね。
ソースを見せてもらった。
$cnt = preg_replace("/[\r\n]/", "<br />", $cnt);
な感じで、「あぁ、HTML に書き換えてるんだね。」というコードの近くに、
$cnt = preg_replace("/\=([0-9a-fA-F]{2,2})/e","pack('c',base_convert('\\1',16,10))",$cnt);
なコードが書かれている。うーん、と考えた後、これは quoted-printable では? と思った。確か、10 年くらい前に、「メールが文字化けして」と困っていた人がいて、その原因を調べたときにも問題は quoted-printable だったが、そのときにも「久しぶりに quoted-printable 見たなぁ。』と思った、ということを思い出した。
うーん shallow magic。