[PHP-users 15071]Re: PHP-4.3系でのセッション処理

Yasuo Ohgaki yohgaki @ ohgaki.net
2003年 5月 7日 (水) 07:59:50 JST


大垣です。

suzuki wrote:
> Warning: Unknown(): Your script possibly relies on a session side-effect
> which existed until PHP 4.2.3. Please be advised that the session extension
> does not consider global variables as a source of data, unless
> register_globals is enabled. You can disable this functionality and this
> warning by setting session.bug_compat_42 or session.bug_compat_warn to off,
> respectively. in Unknown on line 0
> 
> この現象は、register_globals関数のバグなのでしょうか? 
> PHP-4.3から、セッション関連の処理はいくぶん変わっていると聞きますが、
> これまで作成した大量のスクリプトをできるだけ変更せずに、サーバの
> 設定で正常な処理を行えるような方法がありましたら、是非ともご教授
> いただきたいと思います。

古いSessionモジュールのソースを読んだ時に古い動作は
多少おかしな仕様だとおもっていたのですが、作者の意図
することではなかったので動作が修正されました。
# これで、コードはかなりすっきりしたのですが...

メッセージに出ている設定を行えば、警告はなくなるはずです。

> なお、PHPのバージョンアップで、推奨されない古い関数(上の例では
> session_register関数)などが出てきた場合、その都度スクリプトを
> 変更したほうがいいのでしょうか?

session_register/unregisterは全く使用しなくても良い関数です。
$_SESSIONを使う様に変更することをお勧めします。

--
Yasuo Ohgaki





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