[PHP-dev 1421] Re: [PHP-users 33830] .htaccessのmbstring系の設定がディレクトリをまたいで他のphpに反映されてしまう現象について

komura komura.db2r1e @ gmail.com
2008年 8月 4日 (月) 23:36:16 JST


komura です。

修正、お疲れさまでした。

少しだけ時間がありましたので、スナップショット(php5.2-200808031030.tar.bz2)
をダウンロードして確認してみました。

結果としては、"script_encoding" の件については修正されていることを確認しま
した。


詳しくは調べていないのですが、確認の途中でいくつか気になった挙動(バグ?)を
以下に挙げておきます。

1. "substitute_character" の設定値が別のディレクトリでも反映される

   http://ml.php.gr.jp/pipermail/php-users/2008-July/034347.html でも指摘
   されている件です。
   zend-multibyte を有効にしていない場合でも同様の結果になりました。

2. .htaccess で "encoding_translation" を有効にした場合、"illegal_chars" の
   値が蓄積される

   こちらは、zend-multibyte が有効になっている場合のみの挙動です。
   ブラウザで再読込すると "illegal_chars" の値が増え続けます。

   簡単な再現コードは以下の通りです。

     .htaccess
     ----
     php_value mbstring.script_encoding SJIS-win
     php_value mbstring.encoding_translation On
     php_value mbstring.internal_encoding SJIS
     ----

     index.php (UTF-8 で保存)
     ----
     <?php var_dump( mb_get_info( 'illegal_chars' ) ) ?>
     テスト
     ----

1. 2. ともに、php.ini では何も設定せず、mbstring 関係の設定は全て .htaccess
で設定しています。



On Sun, 03 Aug 2008 05:53:13 +0900
Moriyoshi Koizumi <moriyoshi @ at.wakwak.com> wrote:

> 小泉です。
> 
> 原因が判明し、修正を行いました。
> 報告してくださった方 (何人かいらっしゃいます) ありがとうございました。
> 
> お時間のある方で、協力してくださる方がいらっしゃいましたら、
> http://snaps.php.net/ より PHP 5.2 のスナップショットをダウンロードして
> 下記のバグが直っているかどうか手元の環境で確認してくださいませんでしょうか。
> php-5.2-dev.tar.{gz|bz2} というリングがそれです。

-- 
komura <komura.db2r1e @ gmail.com>


PHP-dev メーリングリストの案内