『ke-tai.org』さんでPHPで絵文字メール送信方法の解説をして頂いていますが、1点指摘を。
ke-tai.org – 『ケータイに絵文字入りメールを送信するには(iモード編)』
$body = '[iの絵文字]モードの絵文字入り[キラキラの絵文字]の[メールの絵文字]本文デス。'; $body = base64_encode($body); // メールを送信 $res = mail($to, $subject, $body, $headers);
ドコモの場合body部をbase64_encodeで処理しただけだと『500 Line Too Long』エラーで返ってきてしまうケースがあります。
***.***.***.***_failed_after_I_sent_the_message./Remote_host_said:_500_Line_Too_Long_/
これがいったい何のエラーかというと、ドコモの場合は段落なしの長文メールを送るとエラーになるようです。
てきとー管理者にっき! – 『ドコモのi-modeメールで「500 Line Too Long」のエラー』
PHPプロ – 『phpからDoCoMoへのメール』
文字列にbase64_encodeを掛けただけですと改行なしになってしまうので文章量が多いとメールが送れなくなります。
$body = chunk_split(base64_encode($body));
として一定間隔で改行を入れるようにする必要があります。
ちなみにこのエラーはドコモだけでSoftbank、AUでは発生しません。