アドバイスを求めています: ページが長時間操作されなかった場合にセッションを自動的に終了する方法
php がアクティブに動作しないため、それは不可能です
でも。次回セッションに入るときにタイムアウトしたかどうかを判断するための基準として、現在の時刻を session に入れることができます
セッションが破棄される状況は 2 つだけです: 1 つ目: セッションは session.invalidate() メソッドを呼び出します。 2 番目: 前後の 2 つのリクエストがセッションで指定されたライフサイクル時間を超えた場合、デフォルトは 30 分です。この値は設定可能です
セッションが破棄される状況は 2 つだけです: 1 つ目: セッションが session.invalidate() メソッドを呼び出す 2 つ目: 前後の 2 つのリクエストがセッションで指定されたライフサイクル時間を超過する。デフォルトは 30 分です。30 分を超えると自動的にクリアされます。この値は設定可能です
この期間の値を設定する方法をもう一度質問してもいいでしょうか。ありがとうございます
セッションが破棄される状況は 2 つだけです。 1 つ目: セッションが session.invalidate() メソッドを呼び出した場合 2 つ目: 前後の 2 つのリクエストがセッションで指定されたライフサイクル時間を超えた場合 デフォルトは 30 です。 30 分を超えると、自動的に空になります。この値は設定可能です
この期間の値を設定する方法をもう一度質問してもいいでしょうか。ありがとう
これはjsに依存して動作します。たとえば、各ページのヘッダーに js ロゴを配置します。それをどう達成するかというと。誰もが独自のアイデアを持っており、タイマー ajax が php をリクエストすると、php はやりたいことを何でも実行できます。 。
php.ini でセッションのライフサイクルを設定できます
より柔軟な方法??
セッションの一般的なファイル、データベース、Cookie
最初の 2 つは、php を介した時間制御に基づいてセッション関連のファイルまたはレコードを削除できます。後者は Cookie を制御できます
しかし、トリガー方法はどうでしょうか? 長時間操作がないため、自動的にトリガーするのは困難です
参考
SessionHandler クラス
(PHP 5 >= 5.4.0)
SessionHandlerInterface クラス
(PHP 5 >= 5.4.0)
セッションが破棄される状況は 2 つだけです。 1 つ目: セッションが session.invalidate() メソッドを呼び出します。 : 前後 2 つのリクエストが指定されたセッション時間を超えた場合、デフォルトは 30 分です。この値は設定可能です
この期間の値を設定する方法をもう一度質問してもいいですか。ありがとうございます
php.ini の session.gc_maxlifetime
セッションの長さを設定します。
php.ini でセッションのライフサイクルを設定できます
より柔軟な方法??
セッションの一般的なファイル、データベース、Cookie
最初の 2 つは、php を介した時間制御に基づいてセッション関連のファイルまたはレコードを削除できます。後者は Cookie を制御できます
しかし、トリガー方法はどうでしょうか? 長時間操作がないため、自動的にトリガーするのは困難です
参考
SessionHandler クラス
(PHP 5 >= 5.4.0)
SessionHandlerInterface クラス
(PHP 5 >= 5.4.0)
最後の 2 つの参照は、究極の解決策です。また、セッションの有効期限の処理の詳細を保護できるため、ビジネス ロジックはセッションの有効期限の状況を考慮する必要がありません。