カテゴリー:
セッション
閲覧数:440 配信日:2017-02-24 13:01
リクエスト毎に実行
リクエスト毎にsession_start()自体を毎回呼び出す必要がある
・リクエスト時点で$_SESSIONは常に空
二重実行不可
セッションが既に開始されている状態で session_start() をコールすると?
・E_NOTICE レベルのエラー発生
・その場合二度目のセッションスタートは無視される
Notice: A session had already been started - ignoring session_start()
まとめると?
リクエスト毎にsession_start()を実行する必要があるが、二重に実行することは出来ない
→ E_NOTICE エラー発生
セッションが既に開始されている状態か確認が必要
セッションが既に開始されている場合
・$_SESSIONに変数がセットされている
・NULL でない
if(!isset($_SESSION)){
session_start();
}
session_start();
}