Php 忽略用户中止无限循环[

Php 忽略用户中止无限循环[,php,Php,我使用ignore\u user\u abort的主要目的是下载一个包含大量数据的excel文件,需要10分钟以上的时间,以便在后端进行下载,并使用此功能进行其他过程 由于我第一次使用这个函数是为了理解,所以我写了一个简单的代码如下 ignore_user_abort(true); set_time_limit(0); echo 'Testing connection handling in PHP'; $i=1; while($i<5) { // Did the connec

我使用ignore\u user\u abort的主要目的是下载一个包含大量数据的excel文件,需要10分钟以上的时间,以便在后端进行下载,并使用此功能进行其他过程 由于我第一次使用这个函数是为了理解,所以我写了一个简单的代码如下

ignore_user_abort(true);
set_time_limit(0);

echo 'Testing connection handling in PHP';

$i=1;
while($i<5)
{
    // Did the connection fail?
    if(connection_status() != CONNECTION_NORMAL)
    {   echo "connect lost";
        break;
    }
    else {
        echo "test";
        }

$i++;
}
但当我运行这段代码时,它是无限循环的,而1等于一个无限循环,它只是等价于whiletrue

当条件为true时执行while循环,因为您已经传递了true条件,它永远不会停止运行

如何克服? 而是传递一个变量,并为该变量赋值,使其不满足条件

$i=1;
while($i==1)
{
echo "I will execute only once";
$i=2;
}

$i=1总是这样。这总是正确的:如果$i做了一些更改,但它也进入了infinte loopplz请注意上面的更改,但它也进入了infinite loop请再次查看,您并没有使条件失败。请将$i=2放在while loop.oops的结束大括号之前。对不起..我在上面做了更改,现在它可以工作了,如果我编写代码,则在其他部分也可以要下载excel文件,它会在后端工作吗?这样我就可以继续其他过程了?当然,如果遇到任何问题,为什么不尝试一下并告诉你。你会尝试让你知道的