NVG
NVG

Reputation: 3313

retrieve php server session timeout

I want to retrieve the value of session.gc_maxlifetime from the PHP server settings ( the time after which the session expires after no activity ). Very important : I do not want to change it, I only wish to retrieve its value ( maybe the value is different from server to server ) and I want to use a PHP script that I made to warn users properly, depending on the settings of those server.

Thank you.

Upvotes: 15

Views: 36215

Answers (2)

LF-DevJourney
LF-DevJourney

Reputation: 28529

session.gc_maxlifetime is not the time after which the session expires after no activity. gc here may be mean garbage collenction. As the php manual says,

session.gc_maxlifetime specifies the number of seconds after which data will be seen as 'garbage' and potentially cleaned up. Garbage collection may occur during session start (depending on session.gc_probability and session.gc_divisor).

Note: If different scripts have different values of session.gc_maxlifetime but share the same place for storing the session data then the script with the minimum value will be cleaning the data. In this case, use this directive together with session.save_path.

For more refer to this post.

Upvotes: 2

n-dru
n-dru

Reputation: 9430

That's where ini_get function comes in hand:

$maxlifetime = ini_get("session.gc_maxlifetime");

From manual we read:

session.gc_maxlifetime integer session.gc_maxlifetime specifies the number of seconds after which data will be seen as 'garbage' and potentially cleaned up. Garbage collection may occur during session start (depending on session.gc_probability and session.gc_divisor).

Upvotes: 42

Related Questions