私は、私はPHPでのセッション変数のスコープ、またはセッション自体を理解していないですので、この質問を推測:これは私のコードPHPのセッション変数ISSET(..)= 1の後にsession_start()
あるを
if(session_id()!=""){
echo "Getting rid of session"."</br>";
session_destroy();
}
echo "Before session_start(): ".isset($_SESSION["first_date_of_week"])."</br>";
session_start();
echo "After session_start(): ".isset($_SESSION["first_date_of_week"])." ".$_SESSION["first_date_of_week"]->format("Y-m-d")."</br>";
出力は次のようになります。
Before session_start():
After session_start(): 1 2011-01-09
は、どのように私もそれを使用していないにもかかわらず、セッションを開始した後、セッション変数にISSET(..)を行っているとき、それが直接設定されていることを来りますまたはそれを設定するt?しかし、これまでと同じ価値があります。
また、session_id()= "" if節が決してトリガーされないためです。私はセッションを打ち切ることはありません、どのように ""に設定されていますか?私。私はページをリフレッシュし、セッションがまだ生きていることを期待しています。
ISSETを使用して、それがすでに設定されている場合(..)関数が...その後、事前に
おかげでかなり無用のテストです!
/ニクラス
ヒント:!の 'session_idの()== "(" session_id()== "") 'のように評価されます。 '!='演算子を使用してください... –