Maison  >  Article  >  développement back-end  >  php中设置session的生命周期

php中设置session的生命周期

伊谢尔伦
伊谢尔伦original
2016-11-26 14:27:201800parcourir

PHP中,Session变量保存在服务器端(默认以文件格式保存),而SessionID以cookie形式保存在客户端。

销毁session的方法有两种:

第一种是通过程序

session_destory()方法清除所有session
unset(session['x'])来清除指定的session['x']。

第二种是通过关闭浏览器

关闭后会直接清除所有session。

在Cookie没有禁用的情况下,session ID是保存在Cookie中的。

想要改变session生命周期,可以通过设置Cookie中sessionID的有效时间来实现。设置session生命周期的也有两种方法:

第一种:setcookie()

$lifetime=60;//保存1分钟
 session_start();
 setcookie(session_name(),session_id(),time()+$lifetime,"/");

直接用setcookie设置session id的生命周期。

第二种:session_set_cookie_params()

$lifetime=60;//保存1分钟
session_set_cookie_params($lifetime);
session_start();
session_regenerate_id(true);

session_regenerate_id();方法用于改变当前session_id的值,并保留session中数组的值。参数默认为false,如果设置为true则改变session_id的值,并清空当前session数组。


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn