PHP实现的进度条效果详解


Posted in PHP onMay 03, 2016

本文实例讲述了PHP实现的进度条效果。分享给大家供大家参考,具体如下:
在做采集的时候,想通过php来实现一个进度条功能,谷歌了一下,找了个合适的代码。下面直接上代码:

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> 
<?php
flush(); //将输出发送给客户端浏览器 
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>
<?php
flush();
?>
</body>
</html>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHPMailer的主要功能特点和简单使用说明
Feb 17 PHP
ECMall支持SSL连接邮件服务器的配置方法详解
May 19 PHP
ThinkPHP视图查询详解
Jun 30 PHP
php判断用户是否手机访问代码
Jun 08 PHP
关于Laravel Route重定向的一个注意点
Jan 16 PHP
php file_get_contents取文件中数组元素的方法
Apr 01 PHP
php对象工厂类完整示例
Aug 09 PHP
PHP设计模式之PHP迭代器模式讲解
Mar 22 PHP
Laravel框架文件上传功能实现方法示例
Apr 16 PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
Aug 14 PHP
php连接mysql数据库最简单的实现方法
Sep 24 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 PHP
php实现按天数、星期、月份查询的搜索框
May 02 #PHP
php支持断点续传、分块下载的类
May 02 #PHP
php数组分页实现方法
Apr 30 #PHP
thinkPHP使用pclzip打包备份mysql数据库的方法
Apr 30 #PHP
php打包压缩文件之ZipArchive方法用法分析
Apr 30 #PHP
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)
Apr 30 #PHP
php简单实现数组分页的方法
Apr 30 #PHP
You might like
PHP Socket 编程
2010/04/09 PHP
细谈php中SQL注入攻击与XSS攻击
2012/06/10 PHP
实测在class的function中include的文件中非php的global全局环境
2013/07/15 PHP
PHP编写RESTful接口的方法
2016/02/21 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
JQuery插件开发示例代码
2013/11/06 Javascript
JavaScript对象的property属性详解
2014/04/01 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
JavaScript中数据结构与算法(二):队列
2015/06/19 Javascript
纯javascript实现的小游戏《Flappy Pig》实例
2015/07/27 Javascript
javascript弹出窗口中增加确定取消按钮
2016/06/24 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
JavaScript中关于iframe滚动条的去除和保留
2016/11/17 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
微信小程序自定义头部导航栏(组件化)
2019/11/15 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
ReactRouter的实现方法
2021/01/25 Javascript
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
python求pi的方法
2014/10/08 Python
python 网络编程常用代码段
2016/08/28 Python
Python2.7读取PDF文件的方法示例
2017/07/13 Python
解决django服务器重启端口被占用的问题
2019/07/26 Python
Python 使用元类type创建类对象常见应用详解
2019/10/17 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
2020/02/23 Python
python 两种方法删除空文件夹
2020/09/29 Python
美国知名平价彩妆品牌:e.l.f. Cosmetics
2017/11/20 全球购物
法国发饰品牌:Alexandre De Paris
2018/12/04 全球购物
总经理驾驶员岗位职责
2013/12/04 职场文书
银行开业庆典方案
2014/02/06 职场文书
导师推荐信范文
2014/05/09 职场文书
优秀管理者事迹材料
2014/05/22 职场文书
大学生就业协议书范本(适用于公司企业)
2014/10/07 职场文书
公司财务部岗位职责
2015/04/14 职场文书
springboot入门 之profile设置方式
2022/04/04 Java/Android