[PHP-dev 101] Re: [Patch] arg_separator bug in mbstring

Yasuo Ohgaki php-dev@php.gr.jp
Thu, 08 Nov 2001 08:42:26 +0900


大垣です。

Rui Hirokawa wrote:

> 廣川です。
> 
> 作業、有り難うございます。
> 
> ちょっと見てみたのですが、具体的な不具合の症状が
> よくわかりませんでした。どういった事象なのでしょう?
> 
> あと、質問ですが、
> - セパレータは'='ではなくて'&'ではないのでしょうか?
>   コマンドライン版とかのことを考えると決め打ちではなくて、
>   arg_separator.inputの設定値の方が良いかなと思います。


そうなんですが、*var = *separatorでは

varにquery string
separatorにphp.iniのarg_separator.inputの値(デフォルト'&')

が入ります。
ただ、XHTMLに対応するためにarg_separator.inputに設定される全ての文字が
セパレータとして取り扱われるべきなので(php.ini-recommendedの設定は
'&;'で
コメントアウトされている)、quick hackとして'='を使ってカウントして
います。

# patch無しでは、php.ini-recommendedのarg_separator.inputの
# コメント外すと、separatorが"&;"になるので、最初のGET varしか
# 初期化しません。

ただ、'='を使ったもう一つの理由はphp_treat_data()が'='を使っていたので
こちらの方が早いし"まいいか"ということで、こうしています。

コマンドライン版の事も考えたのですが、ZeevがPHPはWebの為の言語であ
ることを最も優先させるべき、とメールを書いていたので、コマンドライ
ンの事はあまり考えていません :)
php_treat_data()も一緒に書き換えて、動作を同じにしてコマンドライン
での利用も考慮したコードにするのは大賛成です。

--
Yasuo Ohgaki

> 
> - 変数セパレータがある場合の変数の個数の初期値はやはり1からではないでしょうか?
> 
> On Wed, 07 Nov 2001 22:57:33 +0900
> Yasuo Ohgaki <yohgaki@yahoo.co.jp> wrote:
> 
> 
>>Yasuo Ohgaki wrote:
>>
>>
>>>大垣です。
>>>
>>>mail()で日本語を、という件でmbstr_streat_data()がどうなっているのか
>>>見ていたらバグを見付けたのでバッチを送ります。(4.1.0RC CVS用)
>>>
>>大垣です。
>>パッチにバグがあったので新しいパッチを送ります。
>>
>>--
>>Yasuo Ohgaki
>>
>>
> 
> 



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