[PHP-users 13478] Re: mbstring.encoding_translationの設定
桝形 誠二
php-users@php.gr.jp
Fri, 21 Feb 2003 11:26:43 +0900
桝形です。
更に調べた結果です。
> > と、していて、他は全てLocal Valueに反映されますが、
> > mbstring.encoding_translationだけは反映されないようです。
>
> httpd.confのVirtualHost内で、
>
> php_value mbstring.encoding_translation On
>
> と、指定をすると、Local Valueには、Offと表示がされます。
>
> php.iniを、
>
> mbstring.encoding_translation Off
>
> として、
>
> httpd.confのVirtualHost内で、
>
> php_value mbstring.language Japanese
> php_value mbstring.internal_encoding EUC_JP
> php_value mbstring.script_encoding SJIS
> php_value mbstring.http_output SJIS
> php_value mbstring.encoding_translation On
php_value mbstring.encoding_translation 1
と、すると表示も問題なく"On"になる事ができました。
何故、1でないと設定が反映されないのかを調べています。
php.iniでは、
mbstring.encoding_translation On
としたら、1と解釈されて、MBSTRG(encoding_translation)には、
Setされるけど、httpd.confのVirtualHost内で、
php_value mbstring.encoding_translation On
としたら、1ではなく、そのまま値が渡されるという事でしょうか?
動きをしてはそんな感じ?なのですが、だとしたら何故表示は反映
されないが、動作はするのでしょう?
となると、
MBSTRG(encoding_translation)には1がSetされているが、
DISPLAY_INI_ENTRIESで出力しているもの、
main/php_ini.c:139〜
zend_hash_apply_with_argument(EG(ini_directives), (apply_func_arg_t) php_ini_displayer, (void *) (long) module_number TSRMLS_CC);
の、(apply_func_arg_t) php_ini_displayerにSetされている値は
違うからという事?
表示の部分を参照するタイミングと、実際に動作する時のタイミング
の差異からなのでしょうか?
大変お手数ですが、ご教授願います。
_______________________
桝形 誠二( Masugata Seiji )
E-Mail : s.masugata@digicom.dnp.co.jp
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄