[PHP-dev 1033]iconv_mail_send() について (was Re: Fwd: [PHP-I18N] Re: ICU Extensions for PHP)
Moriyoshi Koizumi
moriyoshi @ at.wakwak.com
2004年 11月 6日 (土) 07:26:56 JST
小泉です。
On 2004/11/04, at 16:52, Tadashi Jokagi wrote:
> 前述の通り,メール送信に mb_send_mail()が利用されることは非常に
> 多いと思います.もし iconv が標準で存在することになったら
> l10n/i18n を意識してないオープンソース(sf.net にも結構あります)の
> mail() でメール送信しているものを iconv_send_mail() にしてよ!!っ
> て言いやすいと思います.mbstring は海外ではまず有効になってない場
> 合が多いので,なかなかそうもいえないんですよね.
分かりました。さっそく、実装を検討したいと思いますが、
前のメールに書いた通り 100% mb_send_mail() クローンに
しない方が良いと思いますし、ついでにこのような機能が
あったらいい、というような要望を求めたいと思います。
今のところ、要件としては
- mail() 関数とほぼ同じプロトタイプの関数 iconv_mail_send() を作る。
- メールの実体そのものをストリーム等に出力する iconv_mail_compose() を作る。
- iconv_mail_send() に関して、ヘッダの文字コードは additional_headers
パラメータに指定する "X-PHP-Header-Charset"というヘッダによって
指定できるようにする。例を挙げると、
========================================================================
====
<?php
$msg = "test";
$headers = "From: 日本の人 <japanese @ example.com>\r\n";
$headers .= "X-PHP-Header-Charset: ISO-2022-JP";
iconv_mail_send("nobody @ example.com", "サブジェクト", $msg, $headers);
?>
========================================================================
====
とやると、
========================================================================
====
From: =?ISO-2022-JP?B?GyRCRnxLXCROP00bKEI=?= <japanese @ example.com>
Subject: =?ISO-2022-JP?B?GyRCJTUlViU4JSclLyVIGyhC?=
test
========================================================================
====
というメールが実際には送信される、そういったギミックを考えています。
を考えていまして、これなら既存のコードに大きく変更を加えることなく
i18n 対応できるかな? などと思っていますが、いかがでしょう。
PHP-dev メーリングリストの案内