PHP 5.4-可靠地询问会话。上传进度信息

PHP 5.4-可靠地询问会话。上传进度信息,php,ajax,session,file-upload,apc,Php,Ajax,Session,File Upload,Apc,我看到的大多数建议都是对session.upload\u进度数据使用以下配置值 session.upload\u progress.cleanup=on 从我所看到的情况来看,这种方法的结果是,$\u会话[“上载进度键”]在上载完成后立即被擦除,有效地清除了与已完成文件上载相关的所有数据 当运行一个单独的XHR进程来轮询此数据并显示进度条时,如果上载的文件非常小,可以想象,单独的XHR线程仅在文件上载完成并删除数据后轮询 我有两个问题要问支持在完成上传后立即删除数据的人: 如果在第一次XHR轮

我看到的大多数建议都是对session.upload\u进度数据使用以下配置值

session.upload\u progress.cleanup=on

从我所看到的情况来看,这种方法的结果是,
$\u会话[“上载进度键”]
在上载完成后立即被擦除,有效地清除了与已完成文件上载相关的所有数据

当运行一个单独的XHR进程来轮询此数据并显示进度条时,如果上载的文件非常小,可以想象,单独的XHR线程仅在文件上载完成并删除数据后轮询

我有两个问题要问支持在完成上传后立即删除数据的人:

  • 如果在第一次XHR轮询中未找到任何数据,是否有一种方法可以可靠地确定文件是否已成功完成上载,或者是否出现了问题,并且上载实际上尚未开始
  • 即使在上载过程中成功运行了1次或多次轮询,在上载数据已被擦除的最终轮询中,考虑到文件错误状态包含在已擦除的数据中,是否有方法可以可靠地确定文件上载成功
或者,是否没有可靠的方法来实现上述两种/其中一种,是否可以使用更好的方法

session.upload\u progress.cleanup=关闭


并在完成时查询上载数据,然后手动管理会话数据的清理?

。上传文件的帖子是否没有传达上传的最终成功或失败?完成后的进度反馈有什么用?我想我对这个话题也不是很了解。。。什么触发会话密钥删除?垃圾收集或上传已完成?@ficuscr-谢谢!因为APC,我们现有的上传缓存,从PHP5.5开始就不再起作用了,所以我从必须迁移到$\u会话上传方法的角度来看这个问题,我想我被困在了APC的头部空间中。是的,你是对的,这篇文章确实传达了最终的成功或失败,$\u文件包含特定于文件的信息。由于除了失败后的“原因”之外,所有上传信息都存在于$_会话[“上传进度键”]中,因此我的想法是在一个地方访问它。也许事实上,我应该只依靠$u会话来获得%的进度。在这个问题上,我没有太多的权威。我对你的发现很感兴趣。仅供参考:@ficuscr非常感谢APC更新信息aargh!!:o) 我的$_会话使用了…cleanup=off,所以我认为我们会继续使用它,因为它是PHP内部的,所以我想它的生命路径比APC更可靠?!再次感谢您的输入,非常感谢。@ficuscr-再次感谢您的APCu输入。尽管我们进行了大量调试并尝试改变方法,但使用新的PHP$\u会话方法并没有实现文件上传的稳定性,我认为它还没有像PHP5.6.13那样作为一个文件上传工具做好生产准备。因此,我们将尝试APCu路线-我将在测试后提供更新,以确定我们是否成功。(APC始终非常可靠)