echo "Progress : "; // 5 characters of padding at the end
for ($i=0 ; $i<=100 ; $i++) {
echo "\033[5D"; // Move 5 characters backward
echo str_pad($i, 3, ' ', STR_PAD_LEFT) . " %"; // Output is always 5 characters
long
sleep(1); // wait for a while, so we see the animation
}
https://www.mmbyte.com/article/1791.html
Ⅱ php顯示進度條
如果確實想精確的處理下載進度條的話,兩種方案:
第一種是需要用socket保持與客戶端通信,返回已下載的數據大小,然後可以顯示下載速度,以及進度條之類。
第二種是php與flash交互,顯示進度條。
否則的可以顯示一個模擬進度條,如果滿足需求的話。
滿意請採納。
Ⅲ php 文件上傳,如何實現進度條功能
用flash文件上傳插件
如:http://ke..com/view/1332553.html?wtp=tt
php創始者也寫了一個php的擴展可以實現,麻煩,不如flash上傳插件簡單,qq,的相冊都用flash傳
Ⅳ php 怎麼做進度條
一般實現下載進度條常用的兩種解決方案是:一種是需要用socket保持與客戶端通信,返回已下載的數據大小,然後可以JS+css顯示下載速度,以及進度條之類;二種是php與flash交互,顯示進度條。另外PHP5.4起 開始支持 進度條 Upload progress,你可以了解下!
Ⅳ php中怎麼實現讀取數據進度條功能
<?php//防止執行超時set_time_limit(0);//清空並關閉輸出緩存ob_end_clean();//需要循環的數據for($i = 0; $i < 188; $i++){ $users[] = 'Tom_' . $i;}//計算數據的長度$total = count($users);//顯示的進度條長度,單位 px$width = 500;//每條記錄的操作所佔的進度條單位長度$pix = $width / $total;//默認開始的進度條百分比$progress = 0;?><html><head><title>動態顯示伺服器運行程序的進度條</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 style="margin:50px auto; padding: 8px; border: 1px solid gray; background: #EAEAEA; width: <?php echo $width+8; ?>px"> <div style="padding: 0; background-color: white; border: 1px solid navy; width: <?php echo $width; ?>px"> <div id="progress" style="padding: 0; background-color: #FFCC66; border: 0; width: 0px; text-align: center; height: 16px"></div> </div> <div id="status"></div> <div id="percent" style="position: relative; top: -30px; text-align: center; font-weight: bold; font-size: 8pt">0%</div> </div><?phpflush(); //將輸出發送給客戶端瀏覽器foreach($users as $user){ // 在此處使用空循環模擬較為耗時的操作,實際應用中需將其替換; // 如果你的操作不耗時,我想你就沒必要使用這個腳本了 :) for($i = 0; $i < 1000000; $i++) { } ?><script language="JavaScript"> updateProgress("正在操作用戶 <?php echo $user; ?> ....", <?php echo min($width, intval($progress)); ?>);</script><?php flush(); //將輸出發送給客戶端瀏覽器,使其可以立即執行伺服器端輸出的 JavaScript 程序。 $progress += $pix;} //end foreach?><script language="JavaScript"> //最後將進度條設置成最大值 $width,同時顯示操作完成 updateProgress("操作完成!", <?php echo $width; ?>);</script><?phpflush();?></body></html
Ⅵ php文件下載並且顯示進度條
文件下載顯示進度條的,這個不需要吧,瀏覽器會有顯示。如果是文件上傳顯示進度條,可以參考這個:使用 layui upload 和 PHP 實現分段上傳文件
Ⅶ PHP進度條
解決思路:
任務分兩種,一個是總進度,也就是任務隊列,用一個array保存起來
還有一個就是任務的進度,如,當前任務完成了多少
用一個參數來指示當前進度,如currentTask,再用兩個參數來指示當前正在執行任務的任務進度,比如導出數據,用begin和end來表示當前導出的是從begin到end之間的記錄數
每次任務執行完之後再把begin和end同時在加上增量,再讓瀏覽器跳轉一下,這樣就可以調到下一步繼續執行了,每當在執行當前任務結束時,將CurrentTask向後指示,繼續任務隊列中的任務
以上用到的參數都是用querystring來保存的,包括任務隊列信息,也可以用臨時文件來保存
Ⅷ PHP 導入數據顯示進度條求助
setFaileLine($num):很顯然,當某一條出現錯誤的時候,用這個方法來記錄
getFaileCounter():獲取出現錯誤的總數
getFaileLine():獲取所有出錯的記錄,返回的是一個包含數字的數組
PS:思路不是我原創,我只是弄懂了以後給封裝了一下,具體在哪看的,也不記得了,不敢雪藏,大家共享
Ⅸ php網頁載入進度條
不知道你會不會JS,這類問題用PHP是無法實現的,只有用JS來做。一般是設置兩個全局變數存放需要裝載、已經完成裝載的部件數,然後用定時器更新進度顯示,例如:
<div id=load_stat>進度顯示</div>
<script type=text/javascript>
var need_load=10;//部件裡面使用onload的數量
var load_ok=0;
function show_loading(){
var e=document.getElementById('load_stat');
if (load_ok<need_load){
e.innerHTML='共有'+need_load+'個需要裝載,已經裝載了'+load_ok+'個,完成'+Math.round(load_ok/need_load,2)+'%';
setTimeout("show_loading();",500);//過半秒顯示進度
} else e.style.display='none';//關閉進度條
}
setTimeout("show_loading();",500);//過半秒顯示進度
</script>
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
<img src='...' onload="load_ok++;">
Ⅹ php flush() 輸出進度條
ob_implicit_flush(true);
此函數win下有時並不能很好的跑起來的.打開php.ini,把output_buffering調小看看.