PHP session垃圾回收机制实例分析

 更新时间:2019年06月28日 11:55:04   作者:webbc  
这篇文章主要介绍了PHP session垃圾回收机制,简单分析了session垃圾回收机制的原理、配置及相关使用技巧,需要的朋友可以参考下

本文实例讲述了PHP session垃圾回收机制。分享给大家供大家参考,具体如下:

session过期时间

在php.ini文件中有这样一个配置,这个配置表示session文件过期时间,默认的话是1440秒,也就是24分钟,这个24分钟是session的发呆时间,如果在24分钟内没有对session进行操作,那么session文件就会过期,如果在23分钟的时候操作了session,那么就会又有24分钟的过期时间,如果过期了,该session被服务器认为是垃圾。

session.gc_maxlifetime = 1440

垃圾回收机制控制

还有这样的两个配置,服务器每次session_start的时候,都有可能启动垃圾回收机制去删除垃圾文件,这个概率为session.gc_probability / session.gc_divisor

session.gc_probability = 1
session.gc_divisor = 1000

案例

我们可以这样进行配置,来体会一下session垃圾回收机制。

session.gc_maxlifetime = 60
session.gc_probability = 1000
session.gc_divisor = 1000

这样session的过期时间为60秒,还有就是每次session_start的时候都会去开启gc,然后删除垃圾。

然后写一个脚本:gc.php

<?php
session_start();

测试

1、然后第一次启动浏览器去请求gc.php,然后关闭浏览器,这个时候会产生第一个session文件,如果没有配置的话,默认是在C:\Window\Temp目录下,这个目录也可以进行配置。

2、第二次启动浏览器去请求gc.php,然后关闭浏览器,这个时候会产生第二个session文件

3、第三次启动浏览器去请求gc.php,不关闭浏览器,然后不断的去刷新gc.php,都会去调用session_start方法,由于我们前面进行了相应的配置,所以每次session_start的时候都会去调用gc,然后gc去检测一下是否有垃圾文件,如果有垃圾文件,就将其删除,我们会看到前两个文件一个一个的被删除。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php缓存技术总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • PHP设计模式之命令模式的深入解析

    PHP设计模式之命令模式的深入解析

    本篇文章是对PHP设计模式中的命令模式进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php mysql like 实现多关键词搜索的方法

    php mysql like 实现多关键词搜索的方法

    下面小编就为大家带来一篇php mysql like 实现多关键词搜索的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • PHP 解决session死锁的方法

    PHP 解决session死锁的方法

    本篇文章是对PHP解决session死锁的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php中批量删除Mysql中相同前缀的数据表的代码

    php中批量删除Mysql中相同前缀的数据表的代码

    Mysql如何批量删除相同前缀的数据表,原理就是读取数据中的所有表,查找class_开头的表,如果开头是这个,就删除。
    2011-07-07
  • PHP使用pcntl_fork实现多进程下载图片的方法

    PHP使用pcntl_fork实现多进程下载图片的方法

    这篇文章主要介绍了PHP使用pcntl_fork实现多进程下载图片的方法,较为详细的分析了pcntl_fork的原理与用法,以及使用pcntl_fork实现多进程下载图片的方法,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • php下实现折线图效果的代码

    php下实现折线图效果的代码

    php下实现折线图效果的代码...
    2007-04-04
  • 基于PHP实现邮件实时通知功能

    基于PHP实现邮件实时通知功能

    随着企业化的管理越来越规范,各种项目管理系统中,都需要加入到邮件实时通知功能,所以在项目中如何整合发邮件功能,其实也是很重要的一点。本文为大家介绍了PHP实现邮件实时通知功能的示例代码,需要的可以参考一下
    2022-04-04
  • 分享一个漂亮的php验证码类

    分享一个漂亮的php验证码类

    这篇文章主要为大家分享了一个漂亮的php验证码类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • php实现的Captcha验证码类实例

    php实现的Captcha验证码类实例

    这篇文章主要介绍了php实现的Captcha验证码类,实例展示了一个验证码类程序并附有用法演示实例,有着非常好的参考借鉴价值,需要的朋友可以参考下
    2014-09-09
  • 详解PHP Swoole长连接常见问题

    详解PHP Swoole长连接常见问题

    长连接就是指在基于tcp的通讯中,一直保持连接,不管当前是否发送或者接收数据。本文将详细介绍PHP Swoole长连接的常见问题。
    2021-05-05

最新评论