溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

使用PHP怎么編寫(xiě)一個(gè)進(jìn)度條效果

發(fā)布時(shí)間:2021-02-03 17:26:14 來(lái)源:億速云 閱讀:237 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

使用PHP怎么編寫(xiě)一個(gè)進(jìn)度條效果?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

<?php
//防止執(zhí)行超時(shí)
set_time_limit(0);
//清空并關(guān)閉輸出緩存
ob_end_clean();
//需要循環(huán)的數(shù)據(jù)
for($i = 0; $i < 188; $i++)
{
  $users[] = 'Tom_' . $i;
}
//計(jì)算數(shù)據(jù)的長(zhǎng)度
$total = count($users);
//顯示的進(jìn)度條長(zhǎng)度,單位 px 
$width = 500;
//每條記錄的操作所占的進(jìn)度條單位長(zhǎng)度
$pix = $width / $total;
//默認(rèn)開(kāi)始的進(jìn)度條百分比
$progress = 0;
?>
<html>
<head>
<title>動(dòng)態(tài)顯示服務(wù)器運(yùn)行程序的進(jìn)度條</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
body,div input {
  font-family: Tahoma;
  font-size: 9pt
}
</style>
<script language="JavaScript">
 <!-- 
 function updateProgress(sMsg, iWidth) 
 { 
  document.getElementById("status").innerHTML = sMsg; 
  document.getElementById("progress").style.width = iWidth + "px"; 
  document.getElementById("percent").innerHTML = parseInt(iWidth / <?php echo $width; ?> * 100) + "%"; 
  } 
 --> 
 </script>
</head>
<body>
  <div >
    <div >
      <div id="progress"
        ></div>
    </div>
    <div id="status"></div>
    <div id="percent"
      >0%</div>
  </div> 
<?php
flush(); //將輸出發(fā)送給客戶(hù)端瀏覽器 
foreach($users as $user)
{
  // 在此處使用空循環(huán)模擬較為耗時(shí)的操作,實(shí)際應(yīng)用中需將其替換; 
  // 如果你的操作不耗時(shí),我想你就沒(méi)必要使用這個(gè)腳本了 :) 
  for($i = 0; $i < 1000000; $i++)
  {
  }
  ?> 
<script language="JavaScript"> 
 updateProgress("正在操作用戶(hù) <?php echo $user; ?> ....", <?php echo min($width, intval($progress)); ?>);
</script>
<?php
  flush(); //將輸出發(fā)送給客戶(hù)端瀏覽器,使其可以立即執(zhí)行服務(wù)器端輸出的 JavaScript 程序。 
  $progress += $pix;
} //end foreach 
?> 
<script language="JavaScript"> 
  //最后將進(jìn)度條設(shè)置成最大值 $width,同時(shí)顯示操作完成 
 updateProgress("操作完成!", <?php echo $width; ?>); 
</script>
<?php
flush();
?>
</body>
</html>

關(guān)于使用PHP怎么編寫(xiě)一個(gè)進(jìn)度條效果問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI