JavaScript-关于session存储的问题

JavaScript-关于session存储的问题

瑾兮 发布于 2017-09-18 字数 696 浏览 1117 回复 4

以前通过浏览器生成的session_id都是变化的
如果我设置为固定的session_id的话
然后去存储基于这个id的session键值

我的测试是可以避开切换浏览器的初始化,可以记录用户的某个行为操作次数

这里有个问题,我想让session_id每天下的内容每天清理一次,
就是过期操作
以前都是通过过期cookie中的session_id的时间

现在不依赖cookie,我怎么能过期session,清理内存呢
以下是测试代码:

session_id("test");//这里我想固定id
session_start();
$_SESSION['num']=$_SESSION['num']?$_SESSION['num']:$_SESSION['num']=1;

$_SESSION['num']++;
//setcookie('PHPSESSID', $PHPSESSID, time()+3156000);
echo $_SESSION['num'];

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

瑾兮 2017-11-06 4 楼

将Session的存活时间设为一天

夜无邪 2017-11-03 3 楼

将 Session 的存活时间设为一天,单这么做是没用的,因为 php 运行 session 的 gc 是一个概率事件,具体参考 php.ini 里 session.gc_probability 和 session.gc_divisor 设置。

浮生未歇 2017-10-30 2 楼

1.设置Session的过期时间session.gc_maxlifetime
2.设置Cookie的过期时间session.cookie_lifetime
3.在session值中存入初始化时间值,由程序判断是否过期,过期删掉

晚风撩人 2017-09-19 1 楼

不知道这样行不行,session过期时间需要设置哇!

<?php
session_id("test");//这里我想固定id

session_start();
//第一次的时候记录一下时间,之后判断时间是否过期,
//过期的话就清理一下(测试的过期时间是5秒)
if(!isset($_SESSION['last_access'])){
$_SESSION['last_access'] = time();
}elseif((time()-$_SESSION['last_access'])>5)
{
session_destroy();
}
//
$_SESSION['num']=$_SESSION['num']?$_SESSION['num']:$_SESSION['num']=1;

$_SESSION['num']++;
//setcookie('PHPSESSID', $PHPSESSID, time()+3156000);
echo $_SESSION['num'];

?>

推荐一篇文章看看
http://www.perfgeeks.com/?p=232