使用foreach循环,我们如何使用ob_start()来回显数据

问题描述:

我们设计了一个使用Jquery UI的进度条。我们需要一个能够以数值传递数据的程序。 该代码是不工作使用foreach循环,我们如何使用ob_start()来回显数据

PHP代码

<?php 
ob_start(); 
$array = array(10,20,30,40,50,60,70,80,90,100); 
foreach($array as $a){ 
echo $a; 
sleep(1); 
ob_end_clean(); 
} 
echo 100 ; 
?> 

PHP代码回声单个项目时,它会清除现有的数据,使我们的Ajax程序可以得到实际的数字数据。

感谢

+0

你期望这个代码做什么? – GolezTrol

您需要发送一个请求到你的PHP脚本参数,如果你没有一个实际的更新:

$(function() { 
    $("#progressbar").progressbar({ value: 0 }); 
    setTimeout(function(){ updateProgress(0); }, 500); 
}); 
function updateProgress(data) { 
    $.get(url+'?progress='+data, function(data) { 
     // data contains whatever that page returns  
     if (data < 100) { 
      $("#progressbar").progressbar({value: parseInt(data)}); 
      $("#progresstext").html("<p> Loading...<p>"); 
      setTimeout(function(){ updateProgress(data); }, 500); 
     } else { 
      $("#progressbar").progressbar({value: 100}); 
     } 
    }); 
} 

和你的PHP脚本:

<?php 
    echo (int)$_GET['progress']+10; 
?> 
+0

真的吗?接着?在每次睡眠时,JQuery.ajax成功回调处理程序会神奇地被调用? – GolezTrol

+0

对不起,我已经读过这个问题了.. –

+0

请解释一下,我们如何在Foreach循环中实现它(打印另一个数据,比如echo $ table;),我们已经完成了差不多2%的工作。 – PPS