diary/20090314

ID: 1030 | 作成日: 2009/03/14 [Sat] 15:01:00 | 最終更新: 2012/08/21 [Tue] 12:36:28
FrontPage / diary / 20090314

PHP4・5のセッションであせった

PHP4と5が共存状態で作業をして、ちょっとあせることになったわけですが。

利用しているレンタルサーバ「ロリポップ!」が去年末からPHP5を導入。
以後の新規ユーザーは始めからPHP5、これまでのユーザーは当面PHP4・5共存。
ユーザーで任意にPHP5完全移行を設定できるが、PHP5にすると以前の共存環境には戻せずPHP4は使えなくなる。
共存環境では、拡張子“.php”はPHP4、拡張子“.php5”はPHP5として動く。

・・・で、僕は現在、PHP5導入以前からのユーザーでPHP5にはまだ移行させていないため、PHP4と5の共存状態になっています。

実は先日、ちょっと確かめたいことがあってPHPスクリプトを拡張子を“.php5”にしてPHP5として動かしてみました。
そのスクリプトがログインして使うものでセッションを利用していたのですが、それが元で他のPHP4で動いているセッションを利用するスクリプトがことごとくエラーを返す状態に・・・

どうもPHP5で操作したセッションが残っていて、それが元でエラーを返しているようだったので、PHP5でとりあえずセッション開放試してみようと拡張子“.php5”で「session_unset」(これ試した後で調べてみたら、セッション開放は「$_SESSION = array();」のほうがいいって記述も見たけど、実際のところはどうなんだ?)実行したら、PHP4のスクリプトもエラーを返さなくなりました。

早めに自分で対応できたのでよかったですが、正直これは最初びびった。