提供されたデータからセッションの継続時間を決定するのは少し難しい場合があります。答えを見つけるために詳細を調べてみましょう。
PHP では、セッションはガベージ コレクター (GC) によって管理されます。 session.gc_maxlifetime パラメーターは、セッション データが最後に変更されてから削除対象としてマークされるまでの最大時間を指定します。ただし、注意が必要です。session_start が呼び出されるたびに GC が呼び出されるわけではありません。
session.gc_probability パラメータと session.gc_divisor パラメータは、session_start 呼び出し中に GC がトリガされる確率を決定します。デフォルトでは、これらの値はそれぞれ 1 と 100 です。これは、GC がそのような呼び出しの約 1% でのみ実行されることを意味します。
GC が実行されないという事実常に呼び出されるとは、セッションの有効期間が技術的に期限切れになった場合でも (つまり、セッション データが session.gc_maxlifetime 秒前に変更された場合でも)、引き続き長期間使用できることを意味します。
この動作のため、一般的には、PHP の GC のみに依存するのではなく、独自のセッション タイムアウト メカニズムを実装することをお勧めします。これは、セッションが所定の時間内に確実に終了するようにするのに役立ちます。
以上がPHP セッションは実際にどのくらい持続しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。