我有这个代码,它的工作正常。它显示实时更新。
function progress($resource,$download_size, $downloaded, $upload_size, $uploaded)
{
if($download_size > 0)
$GLOBALS['progress'] = round($downloaded / $download_size * 100);
echo $GLOBALS['progress'];
echo str_pad("", 1024, " ");
flush();
usleep(20000);
}
然后为什么此代码不显示实时更新。它在脚本执行结束时显示100。
function progress($resource,$download_size, $downloaded, $upload_size, $uploaded)
{
if($download_size > 0)
$GLOBALS['progress'] = round($downloaded / $download_size * 100);
}
if($GLOBALS['progress']) {
echo $GLOBALS['progress'];
echo str_pad("", 1024, " ");
flush();
usleep(20000);
}
实际上我不需要显示实时更新。我想要的是当$ GLOBALS ['progress']的值大于0时启动任务。例如
if($GLOBALS['progress']>0){
//start another download immediately not when the value reaches to 100
}
当我尝试使用我的代码的第二个版本时,它会在值为100时启动任务。我需要立即执行代码,一旦其值达到1或大于0.任何人都可以告诉为什么第二个版本的我的代码不起作用,我怎样才能完成我的实际任务?任何建议将不胜感激。