php session锁永不锁定思路

session php 锁定 session_start 永不 思路 写入 直接 name value 编程进阶笔记
发布日期 2022-09-30 更新日期 2022-09-30 阅读次数 94 文章字数 495

有时候不知怎么的页面卡死了,后面排查是php的session锁定导致,于是想了个解决方案。

页面加载时,首先 session_start() ,然后直接关闭session,即  session_write_close();

对 php 7以上版本,可以直接  

session_start([
    'cookie_lifetime' => 86400,
    'read_and_close'  => true,
]);

但是仅仅这样设置,会有大问题,也就是导致 session 不可再次写入。

我们需要补充一个方法,也就是封装写入 session 的方法。

由原来的 $_SESSION[ $name ] = $value ,改为

<?php

function set_session($name, $value){
    session_start();
    $_SESSION[$name] = $value;
    session_write_close();
}

因为写入 session前,必须 session_start() ,而想要不锁定session,则应该 close ,那么除了第一次读取外,当且仅当写入session才需要session_start并且写完后直接close。

多次使用 session_start 和 write_close 没有问题,是正常操作。


文章作者: 朱丰华

文章链接: https://smart.52dixiaowo.com/blog/post-103.html

版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。

session php 锁定 session_start 永不 思路 写入 直接 name value

发表评论

相关推荐
朱丰华   |   7个月前   |   php

php判断是否被iframe

225    评论    点赞
朱丰华   |   1年前   |   php

php正则表达式定界符:异常Delimiter must not be alphanumeric or backslash

190    评论    点赞
朱丰华   |   1年前   |   php · 缓存 · opcache

php 加速、提高并发opcache

198    评论    点赞
朱丰华   |   1年前   |   正则 · 表达

正则表达式,实现if...then...else

113    评论    点赞
朱丰华   |   1年前   |   变量 · mysql · sql · 用户

MySQL用户自定义变量

95    评论    点赞
朱丰华   |   1年前   |   sql · php

PHP如何使用PDO批量执行SQL?

115    评论    点赞
朱丰华   |   1年前   |   php · 字符 · 字符串

如何在 PHP 中将字符串的第一个字母转换为大写

150    评论    点赞
朱丰华   |   1年前   |   php · 字符 · 正则

php正则表达式原生字符

86    评论    点赞
朱丰华   |   1年前   |   字符 · php · 比较

PHP比较字符串大小相关函数

111    评论    点赞
朱丰华   |   1年前   |   php

windows下编写、编译php扩展

158    评论    点赞
朱丰华   |   1年前   |   linux · php

linux下编写、编译php扩展

150    评论    点赞
朱丰华   |   1年前   |   php · 混淆 · obfuscate · git

yakpro-po混淆php代码

106    评论    点赞
朱丰华   |   1年前   |   php

php扩展编译nts的方法

86    评论    点赞
朱丰华   |   1年前   |   linux · 变量 · 环境

linux查看环境变量、设置环境变量

94    评论    点赞
朱丰华   |   1年前   |   js · php · 字符 · 字符串

php json_encode对字符串转义用法

135    评论    点赞
朱丰华   |   1年前   |   php · 捕获

php Fatal error怎么捕获

127    评论    点赞
朱丰华   |   1年前   |   php · 编译

ubuntu、centos系统从源码编译指定版本php--超详细

159    评论    点赞
朱丰华   |   1年前   |   php · git · 编译

从源码编译php

135    评论    点赞
朱丰华   |   1年前   |   php · zend · 反射 · api

php zend引擎api接口:ZENDAPI阅读,反射调用示例

123    评论    点赞
朱丰华   |   1年前   |   php · 引用 · 变量 · c语言

php扩展内存管理与引用计数

127    评论    点赞
{{item.author_name}}   |   {{new Date(item.date*1000).log()}}   |   {{it}} ·

{{item.title}}

{{item.uv}}    评论    点赞