[PHP-dev 112] Re: php -i in PHP-4.1.0RC1+mb_output_handler

Yasuo Ohgaki php-dev@php.gr.jp
Mon, 12 Nov 2001 20:43:36 +0900


Yasuo Ohgaki wrote:

> Rui Hirokawa wrote:
> 
> 
>>廣川です。
>>
>>PHP 4.1.0RC1版で--enable-mbstringを有効にして
>>コンパイルし、php.iniに
>>output_handler = mb_output_handler
>>を指定すると、
>>コマンドライン版のPHPで php -i の出力が行われなくなって
>>しまいました。
>>
>>php-4.1.0RC1のCVSのものでも再現します。
>>ややマイナーな問題ですが、他の方はいかがでしょう?
>>
>>
>>
> 
> 廣川さんのメールを見て、もしかして、と思い私のphp.iniを確認してみ
> たところ
> 
> output_handler = mb_output_handler

> 
> をいれると、Apache SAPIでも何も出力されなくなりました。
> 他の不具合で外していたのを忘れていました。:(

debuggerで見てみると、圧縮される方が先に行われています。

zlib.outpout_compression = Off

だと

output_handler = mb_output_handler

があっても正常に動作しているようです。
両方同時に使えないだけなので、許してもらえる(?)かも知れません。個
人的にはあり困りません。

外しているかもしれませんが、一番簡単な対処策はハンドラの処理順序を
変えると直ると思っています。まだまだ、ソース全体を把握するには程遠
いので、どこで変えるのか時間があるときに見てみます。

# でも、どなたかのパッチ投稿の期待しています:)
#
# php.iniでの登録順を変えれば、両方有効にしても問題無いかも、
# と思い試してみましたがダメでした。やはりソースを修正する必要
# があるようです。

# 蛇足ですが、4.2.0のoutput.cはtrans sidの変換が後に行われているので、
# zlib.compressionを有効にするとtrans sidは動作しないように思えます。
# (4.0.6でも動作しないと思いますが、、)

HEADブランチのソースは結構RCから比べるとかなり変更されているので、
RCのCVSにアクセスする際のに必要な情報を書いておきます。

http://www.php.net/anoncvs.php

に書いてある手順と基本的に同じです。だた、4.1.0RCのブランチタグを
指定する必要があります。

cvs -d :pserver:cvsread@cvs.php.net:/repository co php4

等とcheck outする所に" -r PHP_4_0_7"を追加すると4.1.0RC(正確には
4.0.7RCとしてブランチが作られたが、今は4.1.0RC用のブランチ)がcheck
out出来ます。

Zend, TSRMのcheck out時にも同じタグが必要です。(念のため)

--
Yasuo Ohgaki


__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!  http://bb.yahoo.co.jp/