[PHP-users 5629] セッションの開放について
php-users@php.gr.jp
php-users@php.gr.jp
Fri, 22 Feb 2002 21:07:03 +0900
こんにちは。
セッションを開放する方法ですが、マニュアル( session_unset のページ )によると、
以下のように記述されています。
>注意 $_SESSION(またはPHP 4.0.6以前の場合は$HTTP_SESSION_VARS)が
>使用されている場合、セッション変数の登録を削除するために
>unset()を使用して下さい。 すなわち、unset($_SESSION);
しかし、ここに書かれているコード、unset($_SESSION); を実行すると、
「サーバーが見つかりません」の画面になり、
データをブラウザに表示できなくなります。
Apatche の エラーログには
[Fri Feb 22 18:56:46 2002] [notice] child pid 12843 exit signal Segmentation fault (11)
のようなエラーが記録されています。
これは、PHPのバグなのでしょうか?
それともマニュアルが間違っているのでしょうか?
または、私の環境のみの特殊な状況なのでしょうか?
ちなみに私の環境は以下の通りです。
サーバー
Linux Kernel 2.2.19 SMP
Apache/1.3.20
mod_ssl/2.8.4
OpenSSL/0.9.6a
PHP/4.1.1
クライアント
Windows2000 Pro
以下問題のスクリプト
<?php
session_start();
if( isset($_SESSION["a"]) ){
unset($_SESSION); // エラーが発生
// コメントアウトすると正常に動作する
var_dump($_SESSION);
}else{
$_SESSION["a"] = "test";
var_dump($_SESSION);
}
printf('<br><a href="%s">next</a>',$_SERVER["PHP_SELF"]);
?>
--
泰野 裕士
<yasuno@ops.ne.jp>