Php 为什么echo在do-while循环中不工作,甚至在ignore\u user\u abort(1)时也不工作?
我使用了一个日志打印机来测试ignore_user_abort是否有效,它是否有效。然而,回声不想工作。回音只有在循环完成时才起作用吗Php 为什么echo在do-while循环中不工作,甚至在ignore\u user\u abort(1)时也不工作?,php,loops,while-loop,do-while,abort,Php,Loops,While Loop,Do While,Abort,我使用了一个日志打印机来测试ignore_user_abort是否有效,它是否有效。然而,回声不想工作。回音只有在循环完成时才起作用吗 <?php ignore_user_abort(1); // run script in background set_time_limit(0); // run script forever $interval=2; // do every 2 sec... $i=0; $lastRunLog = 'lastrun.log'; do{ /
<?php
ignore_user_abort(1); // run script in background
set_time_limit(0); // run script forever
$interval=2; // do every 2 sec...
$i=0;
$lastRunLog = 'lastrun.log';
do{
// add the script that has to be ran every 2 sec here
// ...
echo 'Test: '.$i;
file_put_contents($lastRunLog, time());
sleep($interval); // wait 2 sec
$i=$i+1;
}while(true);
?>
是和否
您需要担心三个输出缓冲区:
因此,echo会立即放入PHP缓冲区。您可以将缓冲区发送到Web服务器,但之后缓冲区将不再由您控制。是的,只有在PHP完成并从服务器发送到浏览器后,才会显示回显