$ _SESSION设置等到脚本结束

时间:2017-03-03 07:43:32

标签: php global-variables session-variables

我想要的是什么: $ _SESSION变量应该等于"阶段1"对于脚本的前5秒,然后应更改为" Stage 2"。

我得到了什么: $ 5STHION变量在5秒结束之前根本没有设置,此时它被设置为"阶段1"并立即"第2阶段"。

session_start();

$_SESSION['variable']='Stage 1';

sleep(5);

$_SESSION['variable']='Stage 2';

我做错了什么?

(我需要这个代码概念,以便能够使用AJAX在另一个页面上获取$ _SESSION变量,以便实时跟踪长PHP脚本的进度。)

编辑:我认为我意识到了这个问题:当服务器忙于在一个页面中调用sleep时,服务器就会挂起并且#34;直到该脚本完成。因此,当尝试在另一个页面上检索$_SESSION['variable']时,页面只是等待(正在连接...),直到第一页完成其sleep,然后才会执行服务器将第二页发送到浏览器。

我只需要升级到更好的服务器吗?(我目前正在使用1和1最便宜的托管计划)

1 个答案:

答案 0 :(得分:0)

我在另一篇文章中看到了一些可能对你有用的东西。

  

尝试在文档顶部添加$n = 'Your number'; $dRes1 = sqrt((5*pow($n, 2))-4); $nRes1 = (int)$dRes1; $dDecPoint1 = $dRes1 - $nRes1; $dRes2 = sqrt((5*pow($n, 2))+4); $nRes2 = (int)$dRes2; $dDecPoint2 = $dRes2 - $nRes2; if( !$dDecPoint1 || !$dDecPoint2 ) { echo 'True'; } else { echo 'False'; } 。机会是   它达到“最长执行时间”并导致脚本   终止。