[PHP-users 11040] Re: mb_output_handler の動作について

Rui Hirokawa php-users@php.gr.jp
Tue, 22 Oct 2002 22:00:57 +0900


廣川です。

たしか、バイナリデータ出力時に mb_http_output("pass")とする必要がある
のを省力化するため、header関数でContent-Type: ヘッダを出力した場合、
には変換がオフになるようにされていると思います。
(ただし、hdml等、Content-Type: text/* の場合には変換される。)

従来のmb_http_output("pass")のみの仕様の方がシンプルで良いかとも
思いますが、上記の仕様もそれなりに便利なので、迷うところです。

基本的には、マニュアルの記述を見直して上記の仕様に基づくものと
するという方向でしょうか。

On Tue, 22 Oct 2002 15:27:45 +0900
Yasuo Ohgaki <yohgaki@ohgaki.net> wrote:

> 大垣です。
> 
> Mashiki wrote:
> >>注意 イメージのようなバイナリデータをPHPスクリプトから
> >>出力したい場合、 mb_http_output()を用いて出力エンコーデ
> >>ィング を"pass"にし、変換を無効とする必要があります。 
> > 
> > 
> > の仕様のほうが4.1.xとの互換性も有り、かつストレートだと
> > おもうのですが。いかがでしょうか。
> 
> たしかにそうなのですね。
> 
> 自分が書いたコメントからすると、Content-Type: text/hdml
> 等とすると、全く出力できないと言うのは困るのでとりあえず出力
> できるようにした、っぽいですね。この動作は変更される可能性があ
> る、と書いているくらいですから。
> 
> もしかすると、もともとのコードがContent-Type:(または
> charset?)を設定したらエンコーディング変換をしない、と言う事
> だったのではないかと推測しています。
> 
> # 昔の事すぎて、全然覚えていません。パッチからするとクラッシュ
> # を直しただけのようです。(hunk #2)
> 
> http://cvs.php.net/diff.php/php4/ext/mbstring/mbstring.c?r1=1.48.2.4&r2=1.48.2.5&ty=u&Horde=2acfeb96b9551fec42c1058dd6189e8d
> 
> # 今、改修する時間がありませんが、どうしましょう?
> 
> --
> Yasuo Ohgaki


-- 
-----------------------------------------------------
Rui Hirokawa <rui_hirokawa@ybb.ne.jp>
             <hirokawa@php.net>