当前位置:  开发笔记 > 编程语言 > 正文

两个session_starts()挂起PHP应用程序

如何解决《两个session_starts()挂起PHP应用程序》经验,为你挑选了1个好方法。

上下文:我打算使用mod_rewrite(首页加载子页面)构建应用程序,但是却停留在从前端控制器页面加载session_enabled页面.

问题:问题是我使用session_start()调用twise,PHP页面停止响应.奇怪的是,session_start函数是无害的,它们在不同的页面上调用.

我已经将问题缩小到这个样本:

child.php文件:

parent.php文件:

调用parent.php将使浏览器无限加载.只要您对session_start()调用之一进行评论,它就会立即加载.

这个问题的根源是什么?我非常需要启用会话的页面.

PS我可以通过包含页面来解决它,但它们依赖于URL参数,我想避免为了某种参数代理而修复它们.



1> Tom Haigh..:

session_write_close()一旦不再需要写入会话,就需要调用.目前,由于您的脚本在整个持续时间内都打开了会话,因此您一次只能运行一个会话.

来自manua l:

会话数据通常在脚本终止后存储而无需调用session_write_close(),但由于会话数据被锁定以防止并发写入,因此任何时候只有一个脚本可以在会话上运行.将框架集与会话一起使用时,由于此锁定,您将体验到逐个加载的框架.只要对会话变量进行了所有更改,就可以通过结束会话来减少加载所有帧所需的时间.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有