session过期由两处决定:
存在在浏览器客户端的PHPSESSID由cookie过期时间这控制,
session_set_cookie_params($v)或者可以这样: setcookie(session_name(),session_id(),time()+50);设置cookie的sessionid过期时间
$lifetime=600;
session_set_cookie_params($lifetime);
session_start();
或者
session_start();
setcookie(session_name(),session_id(),time()+$lifetime);
存在在服务器端的session文件由php.ini中的session.gc_maxlifetime控制
打开页面并执行session_start();
检测浏览器cookie是否传递过来PHPSESSID
1.有则查找session文件中对应名称的文件,无则创建session文件并存储,同时传递PHPSESSID到浏览器cookie
2.或者有,但session文件中没有对应文件,则以传递过来的名称创建session文件
session文件过期后如果没有删除,只要cookie中有对应的PHPSESSID,session文件依然有效