[PHP-dev 914]Re: multipart/form-data時のencoding_translationの仕様について
Rui Hirokawa
rui_hirokawa @ ybb.ne.jp
2003年 10月 25日 (土) 14:01:38 JST
廣川です。
http_inputの指定に対する対応が抜けていたようです。
1.mbstring.encoding_translation = On の場合
(1) http_input = auto の場合:
入力文字コードを検出して内部文字コードに変換
(2) http_input = pass の場合:そのままスルー
(3) http_input = 有効な文字エンコーディングの場合:
指定された文字コードから内部文字コードに変換
2.mbstring.encoding_translation = Off の場合
mbstringが組み込まれないオリジナル版と同一の動作
という感じでどうでしょうか?
とりあえず PHP5, PHP-4.3.4dev用のパッチを作ってみましたが
PHP 4.3.4にコミットできるかどうかはIliaさん次第です。
On Fri, 24 Oct 2003 15:23:09 +0900
Seiji Masugata <s.masugata @ digicom.dnp.co.jp> wrote:
> こんにちわ、桝形です。
>
> 最新のmbstringのマニュアルには、
> ----------------------------------------------------------------------
>
> 注意: PHP 4.3.3以降、HTMLフォームのenctypeが multipart/form-dataに
> 設定され、かつ、 php.iniにおいて mbstring.encoding_translationにOnが
> 指定されて いる場合、 POSTデータの変数とアップロードされたファイルの
> 名前の 文字エンコーディングは、内部文字エンコーディングに変換されます。
> ただし、HTMLフォームのnameに指定した文字は変換されません。
>
> ----------------------------------------------------------------------
> と、あります。
>
> 現状、script_encoding機能だけを使いたくて、自前で$_POST/$_GET/
> $_COOKIEを内部コードへ変換しているのですが、php.ini単位で、
> http_inputにpass指定をしているのに、multipart/form-dataで送信
> された場合、$_POSTだけが内部コードへ自動変換されます。
>
> ここの仕様は、
>
> mbstring.encoding_translationがOnで
> http_inputがpass以外の指定の時に変換処理を行う
>
> というのが正しいような気もするのですが、いかがでしょうか。
>
> こういう風にできれば、完全にPHP3-i18nと同様かな?と思います。
>
> --
> Seiji Masugata<s.masugata @ digicom.dnp.co.jp>
>
>
> _______________________________________________
> PHP-dev mailing list
> PHP-dev @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-dev
--
Rui Hirokawa <rui_hirokawa @ ybb.ne.jp>
PHP-dev メーリングリストの案内