我今天在我们正在开发和重构的应用程序中遇到了一些问题。我们目前有一个巨大的“用户”对象,其中包含有关登录用户及其权限的大量信息。一切都在用户登录后立即完成,并在会话中序列化。序列化现在开始需要一些时间,而且我发现有许多 __destruct 脚本等。
因此,考虑到这一点,我想知道是否可以让 PHP 在页面提供给客户端后执行所有这些“关闭”步骤,而不保持 HTTP 连接打开,因为它会显示为页面仍然加载并阻止某些客户端代码执行。
知道我在 Zend 上运行可能会有所帮助...我试图显式关闭输出缓冲区,而不是等待 php 在脚本结束时执行此操作,但同样的问题仍然存在。我还关闭了会话以确保这不是它的错,但它会阻止用户对象将自己保存在会话中的 __destruct 上。
感谢您的建议和/或解释。
PS.:我知道整个事情必须重做,因为这不是一个很好的方法,但我们现在没有时间去做。