php设置session有效期(php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**)

:暂无数据 2026-04-09 22:40:02 0
还记得第一次接触php设置session有效期时的茫然吗?是php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**这个概念,像一盏灯照亮了后续的路。本文将为你点亮这盏灯。

本文目录

php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**

你好,首先你得搞清楚session的机制,
你的session 时间哪怕你设置10年,只要用户一关浏览器那你的session就失效了.
session 是运行在服务器端的.
你的这个需求3天内不用再登录只能用cookie来做了,
cookie运行在客户端,但是用户清理了cookie的话此功能就会失效

php session 不会过期 怎么设置过期

php session本来就会过期啊(本来是会话的cookie,也就是说关闭浏览器,则session过期),如果要强制过期的话可以:
setcookie(session_name(),’’, time() - 3600);
session_destroy();
两者同时使用即可。
希望能够帮助到你,如果还有什么疑问,请留言。

Thinkphp 对session有效期的设置为什么总不起作用

thinkphp的session设置周期是无效的;
直接的影响就是无法保留用户的**状态;
用thinkphp开发的项目;
关闭浏览器后用户就退出了;
即便设置了session周期也没作用;
这个bug存在很久了;
但是thinkphp官网一直没处理更新;
吐槽完毕;下面来解决这个bug;
首先需要在 /Thinkphp/Common/funtion.php 公告函数的第1213行添加如下内容;
如果不是在1213行;就搜索gc_maxlifetime

// 1213行原代码if(isset($name);PHP

原代码:
 
更改后的代码:
 
然后在配置项/Application/Common/conf/config.php中添加如下代码

//***********************************SESSION设置**********************************
’SESSION_OPTIONS’         =》  array(
’name’                =》  ’BJYSESSION’,                    //设置session名
’expire’              =》  24*3600*15,                      //SESSION保存15天
’use_trans_sid’       =》  1,                               //跨页传递
’use_only_cookies’    =》  0,                               //是否只开启基于cookies的session的会话方式
),PHP

ok;大功告成;

怎么设置session永不过期

打开php.ini设置文件
修改三行如下:
1、session.use_cookies
把这个的值设置为1,利用cookie来传递sessionid
2、session.cookie_lifetime
这个代表SessionID在客户端Cookie储存的时间,默认是0,代表浏览器一关闭SessionID就作废……就是因为这个所以PHP的session不能永久使用! 那么我们把它设置为一个我们认为很大的数字吧,999999999怎么样,可以的!就这样。
3、session.gc_maxlifetime
这个是Session数据在服务器端储存的时间,如果超过这个时间,那么Session数据就自动删除! 那么我们也把它设置为99999999。
就这样一切ok了,当然你不相信的话就测试一下看看——设置一个session值过个10天半个月的回来看看,如果你的电脑没有断电或者宕机,你仍然可以看见这个sessionid。
当然也可能你没有控制服务器的权限并不能像我一样幸运的可以修改php.ini设置,一切依靠我们自己也是有办法的,当然就必须利用到客户端存储cookie了,吧得到的sessionID存储到客户端的cookie里面,设置这个cookie的值,然后把这个值传递给session_id()这个函数,具体做法如下:
代码如下
《?php
session_start(); // 启动Session
$_SESSION; // 注册Session变量Count
isset($PHPSESSID)?session_id($PHPSESSID):$PHPSESSID = session_id();
// 如果设置了$PHPSESSID,就将SessionID赋值为$PHPSESSID,否则生成SessionID
$_SESSION++; // 变量count加1
setcookie(’PHPSESSID’, $PHPSESSID, time()+3156000); // 储存SessionID到Cookie中
echo $count; // 显示Session变量count的值
?》
如果很久以后(多久?你自己看吧)你回来刷新这个页面,输出的数字比你走的时候大了1那就对了!如果大了很多,估计是谁动你电脑了,这次测试就不准确了,呵呵……重新出去一会儿吧!
注意:在setcookie一行中的’PHPSESSID’并不是一定的,如果你遇到有个患有修改狂疾病的网管员,他可能对其做了修改,最好的方法是用phpinfo()这个函数看看,确认一下session.name一项的值,比较科学。

php 怎么设置session 的值永不过期

把sessionID存到客户端cookie里试试呢

《?php 
session_start(); // 启动Session 
$_SESSION; // 注册Session变量Count 
isset($PHPSESSID)?session_id($PHPSESSID):$PHPSESSID = session_id(); 
// 如果设置了$PHPSESSID,就将SessionID赋值为$PHPSESSID,否则生成SessionID 
$_SESSION++; // 变量count加1 
setcookie(’PHPSESSID’, $PHPSESSID, time()+3156000); // 储存SessionID到Cookie中 
//echo $count; // 显示Session变量count的值 
?》

session怎么设置过期时间

大多数据情况下我们对于session过期时间使用的是默认设置的时间,而对于一些有特殊要求的情况下我们可以设置一下session过期时间。
对此,可以在PHP中,设置php.ini,找到session.gc_maxlifetime = 1440 #(PHP5默认24分钟)
这里你可以随便设置一下过期时间.但是有人说设置以后,好象不起作用!
其实不是不起作用,而是因为系统默认:
session.gc_probability = 1
session.gc_divisor = 1000
garbage collection 有个概率的,1/1000就是session 1000次才有一次被回收。
只要你的访问量大了,那就能达到回收的效果.
或者你也可以设置一下session.gc_divisor 的值,
比如:session.gc_divisor = 1,这样就能明显的看到SESSION过期的效果了.
我们最常用的是在php程序中设置,如下例程序所示:
《?php
if(!isset($_SESSION)》60)
$_SESSION = time();
?》
这样就搞定了,如果要设置已过期的话也可以在程序中实现:
《?php
unset($_SESSION=’’;
?》

php设置session有效期的世界里,php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**是一把关键的钥匙。希望这篇文章把这把钥匙交给了你。用它去开启更多可能,也欢迎回来分享你打开的宝藏!
本文编辑:admin

更多文章:


c***ole口怎么连电脑(win10连接c***ole口的步骤)

c***ole口怎么连电脑(win10连接c***ole口的步骤)

大家好,c***ole口怎么连电脑相信很多的网友都不是很明白,包括win10连接c***ole口的步骤也是一样,不过没有关系,接下来就来为大家分享关于c***ole口怎么连电脑和win10连接c***ole口的步骤的一些知识点,大家可以关注

2026年4月10日 00:40

java转apk工具下载(求APK改之理java SDK (JDK)网址下载)

java转apk工具下载(求APK改之理java SDK (JDK)网址下载)

有研究表明,成功掌握java转apk工具下载的学习者,普遍在求APK改之理java SDK (JDK)网址下载这个环节投入了更多精力。其重要性不言而喻。

2026年4月10日 00:20

matlab中count的用法(用matlab 统计连续数值的个数)

matlab中count的用法(用matlab 统计连续数值的个数)

朋友们,对matlab中count的用法感到陌生再正常不过了。本篇内容将化身您的指南针,帮您在用matlab 统计连续数值的个数的迷雾中找到方向。

2026年4月10日 00:00

javase是不是java基础(javase是什么意思)

javase是不是java基础(javase是什么意思)

为什么说不懂javase是什么意思,就等于没学明白javase是不是java基础?这篇文章将给你一个令人信服的解释。

2026年4月9日 23:40

telnet ip 端口号(Telnet的默认端口号是多少)

telnet ip 端口号(Telnet的默认端口号是多少)

大家好,今天小编来为大家解答以下的问题,关于telnet ip 端口号,Telnet的默认端口号是多少这个很多人还不知道,现在让我们一起来看看吧!

2026年4月9日 23:20

shellcode在线解码(请教如何在Shell中实现base64解码)

shellcode在线解码(请教如何在Shell中实现base64解码)

其实shellcode在线解码的问题并不复杂,但是又很多的朋友都不太了解请教如何在Shell中实现base64解码,因此呢,今天小编就来为大家分享shellcode在线解码的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年4月9日 23:00

php设置session有效期(php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**)

php设置session有效期(php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**)

还记得第一次接触php设置session有效期时的茫然吗?是php中如何设置session时长,使得用户登录一次之后保证3天内不用重复**这个概念,像一盏灯照亮了后续的路。本文将为你点亮这盏灯。

2026年4月9日 22:40

getelement**ytagname的功能是什么(python中root.getelement**ytagname有什么作用)

getelement**ytagname的功能是什么(python中root.getelement**ytagname有什么作用)

朋友们,对getelement**ytagname的功能是什么感到陌生再正常不过了。本篇内容将化身您的指南针,帮您在python中root.getelement**ytagname有什么作用的迷雾中找到方向。

2026年4月9日 22:20

会计学python有什么用(财务有必要学python吗)

会计学python有什么用(财务有必要学python吗)

有没有觉得会计学python有什么用听起来很高深?别怕,今天我们就把它和财务有必要学python吗一起,拆解成易懂的小知识点。

2026年4月9日 22:00

ubuntu安装到u盘(如何把Ubuntu装到U盘中)

ubuntu安装到u盘(如何把Ubuntu装到U盘中)

最新数据显示,关注ubuntu安装到u盘的人中,超过70%都对如何把Ubuntu装到U盘中抱有浓厚兴趣。本文将满足这一核心需求。

2026年4月9日 21:40

最近更新

getelement**ytagname的功能是什么(python中root.getelement**ytagname有什么作用)
2026-04-09 22:20:02 浏览:0
热门文章

繁体字转换器(繁体字转化)
2026-04-04 18:00:01 浏览:0
androidbc(bc8-android是什么手机型号)
2026-04-05 07:20:02 浏览:0
标签列表