PHP サーバから mail() で i-mode にメールを送信する実験とかしてみる.
ふむ...確か,仕様によれば,i-mode メールは本文が 500バイトまで. Subject はあまり記載されているのを見ないが, いくつかの端末で確認すると 32バイトまでのようだ. で,文字コードは Shift_JIS で,半角カナも(i-mode 間では)おっけーだぞ,と.
という端末に向かって,ヘッダは MIME で本文は ISO-2022-JP とかゆー, 仕様的にほとんどイヤガラセとしか思えないメールを送ってみる... あれ,何事もなかったように受け取ってるじゃないか. internet と i-mode の間のゲートウェイが, その辺の変換をしてくれてるのかな? だったら「コードは Shift_JIS」なんて縛りも必要なさそーだが...
文字数オーバの Subject を付けてメールを送ってみる. 有無を言わせずぶったぎられる... が,どうも 32バイトで切られてる訳ではないように見える... 何だろう,例えば 32バイトの境界を 2バイトコードがまたぐ場合とかなら解るけど, そういうわけでもないみたい.不思議だなぁ...
本文が文字数オーバの場合は? ぶったぎられて,末尾に「/」が付いた形で表示される. 切られる位置は...えーっと,498バイト? かな? 改行コードはどうやら 2バイトな模様. んー,どうやら「500バイト」は ISO-2022-JP が Shift_JIS に変換された後のバイト数である模様... へぇぇ,するとやはりゲートウェイ上で変換か? 謎やなぁ...