1.session回收
//session的實效時間
session.gc_maxlifetime = 86400
//垃圾回收的概率
#概率是gc_probability/gc_divisor
session.gc_probability = 1
session.gc_divisor = 100
session.gc_probability = 1
session.gc_divisor = 100
<?php
if(! isset( $_SESSION['last_access'])||( time()- $_SESSION['last_access'])>60)
$_SESSION['last_access'] = time();
?>
if(! isset( $_SESSION['last_access'])||( time()- $_SESSION['last_access'])>60)
$_SESSION['last_access'] = time();
?>
http://www.orczhou.com/index.php/2009/12/php-session/
代碼:
原理:注意已經改變session的存儲路徑了,
如果腳本中沒有設置session路徑,會按配置文件中的路徑進行垃圾回收,如果腳本中有設置回收時間和路徑的話會按設置的走,沒有的話會按配置文件的走,跟生成文件時設置的session生存時間沒有關系
$Lifetime = 3600;
$Seperator = ( strstr( strtoupper( substr( PHP_OS, 0, 3)), "WIN")) ? "\\" : "/";
$DirectoryPath = dirname( __FILE__) . "{ $Seperator}SessionData";
is_dir( $DirectoryPath) or mkdir( $DirectoryPath, 0777);
if ( ini_get("session.use_trans_sid") == true) {
ini_set("url_rewriter.tags", "");
ini_set("session.use_trans_sid", false);
}
ini_set("session.gc_maxlifetime", $Lifetime);
ini_set("session.gc_divisor", "1");
ini_set("session.gc_probability", "1");
ini_set("session.cookie_lifetime", "0");
ini_set("session.save_path", $DirectoryPath);
session_start();
$Seperator = ( strstr( strtoupper( substr( PHP_OS, 0, 3)), "WIN")) ? "\\" : "/";
$DirectoryPath = dirname( __FILE__) . "{ $Seperator}SessionData";
is_dir( $DirectoryPath) or mkdir( $DirectoryPath, 0777);
if ( ini_get("session.use_trans_sid") == true) {
ini_set("url_rewriter.tags", "");
ini_set("session.use_trans_sid", false);
}
ini_set("session.gc_maxlifetime", $Lifetime);
ini_set("session.gc_divisor", "1");
ini_set("session.gc_probability", "1");
ini_set("session.cookie_lifetime", "0");
ini_set("session.save_path", $DirectoryPath);
session_start();