不好意思,我怎么没有看到过 sess_gc这个函数?只能帮你up了

解决方案 »

  1.   

    这个是自定义函数,不是手册上的函数。在用到session_set_save_handler()时,自定义的。
    -关键问题是:
    1、sess_gc($maxlifetime);这个用到哪个地方,才能做到“偶尔”清理session
    2、$maxlifetime,是不是可以随便设时间,比如3600,7200等
      

  2.   

    是不是和java虚拟机收集垃圾时的原理差不多??
      

  3.   

    1、$maxlifetime应该从php.ini设置中取,你总不能希望php.ini中的设置形同虚设吧。php.ini默认设置session.gc_maxlifetime=1440
    这一点我在(二)中已对你说了
    2、关于session函数在偶尔的调用它,来删除过期的session”
    操作系统中有一个gc进程,他的作用是定时删除系统临时文件目录中的文件。当删除时他会和文件生成的程序交互,以取得这次删除的文件数。
    在删除php产生的session临时文件时,他同样也会与php对话的。而php就会告诉他删去1/100(默认值)
    session.gc_probability=1
    session.gc_dividend=100
    至于在你的系统中,gc进程是否会如期完成这一工作是与你的系统设置有关的