百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

取得程序的运行时间 [复制链接]
查看:110311 | 回复:4

头像被屏蔽

0

主题

2624

帖子

2898

积分

落伍者(两全齐美)

亲亲我吧爱我吧

Rank: 2

贡献
0
鲜花
0
注册时间
2002-9-20
发表于 2003-6-29 16:00:13 | |阅读模式 来自 中国河南新乡
===============================

转贴自PHP2000
作者: bigfat

===============================
大家或许经常看到有些php页面底下有显示
程序运行时间:XXXXX秒
等等信息,这是怎么作到的呢?

虽然php有POSIX系列函数(http://www.php.net/manual/en/ref.posix.php)
能取得程序的运行时间等等信息
但是这一系列函数不能运行在Windows中
而且他得到的时间还不包括MySQL等等消耗的时间
所以万全之策就是分别记录程序开始和结束的时间
然后求差值
microtime (http://www.php.net/manual/en/function.microtime.php)这个函数就派上了用场
在程序中测试一下
<?php
echo microtime();
?>
他会输出两串数字
第二个是Unix时间戳 (也就是time() 函数取得的那个东东)
第一个是 他的毫秒部分

所以把两个部分相加 就能得到当前精确的时间
php mannual上的函数

function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}

呵呵
所以 以后你就可以试试了
<?php

function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}

$start_time=getmicrotime();

//你的程序

$end_time=getmicrotime();

echo '程序运行时间';
echo $end_time-$start_time();

?>

好了就这样了
用这个函数 和Posix函数配合 还能分别取得 php和MySQL的时间等待聪明的你自己去摸索啦!
签名被屏蔽
头像被屏蔽

0

主题

2759

帖子

4026

积分

落伍者(两全齐美)

最佳信誉"无痕"

Rank: 2

贡献
3
鲜花
0
注册时间
2001-9-14
发表于 2003-6-29 17:36:34 | 来自 中国河北石家庄
除了资料老点 但对大家还是有帮助的
签名被屏蔽

19

主题

1万

帖子

1万

积分

落伍者(四季发财)

地狱魔鬼

Rank: 4

贡献
978
鲜花
2
注册时间
2001-12-7
发表于 2003-7-17 03:37:54 | 来自 中国江苏无锡
Originally posted by 伏地魔 at 2003-6-29 04:00 PM:
===============================

转贴自PHP2000
作者: bigfat

===============================
大家或许经常看到有些php页面底下有显示 ...

错误了
应该是

  1. <?php

  2. function getmicrotime(){
  3. list($usec, $sec) = explode(" ",microtime());
  4. return ((float)$usec + (float)$sec);
  5. }

  6. $start_time=getmicrotime();

  7. //你的程序

  8. $end_time=getmicrotime();

  9. echo '程序运行时间';
  10. echo $end_time-$start_time;

  11. ?>
复制代码
ZT....昔日落伍名人今何在?当我看到这个帖子的时候真的是感触颇多啊
http://xh.wxbst.com
头像被屏蔽

0

主题

1999

帖子

2846

积分

落伍者(两全齐美)

杜鹃滴血

Rank: 2

贡献
0
鲜花
0
注册时间
2002-5-6
发表于 2003-7-17 09:20:57 | 来自 中国上海

  1. <?PHP
  2. /*
  3. Description:account u programming run time
  4. author:tianxing
  5. bug report:has been hiddened
  6. */
  7. class TIMER {

  8.         var $StartTime = 0;
  9.         var $StopTime  = 0;
  10.         var $TimeSpent = 0;

  11.         function start()
  12.         {
  13.                 $this->StartTime = microtime();
  14.         }


  15.         function stop()
  16.         {
  17.                 $this->StopTime = microtime();
  18.         }


  19.         function spent()
  20.         {
  21.                 if ($this->TimeSpent)
  22.                 {
  23.                         return $this->TimeSpent;
  24.                 }
  25.                 else
  26.                 {

  27.                         $StartMicro = substr($this->StartTime,0,10);
  28.                         $StartSecond = substr($this->StartTime,11,10);
  29.                         $StopMicro = substr($this->StopTime,0,10);
  30.                         $StopSecond = substr($this->StopTime,11,10);
  31.                         $start = doubleval($StartMicro) + $StartSecond;
  32.                         $stop = doubleval($StopMicro) + $StopSecond;
  33.                         $this->TimeSpent = $stop - $start;
  34.                         return substr($this->TimeSpent,0,8);

  35.                 }

  36.         } // end function spent();


  37. } //end class timer;



  38. //used manual:please see a examples:
  39. /*
  40. $timer = new TIMER;

  41. $timer->start();

  42. for ($i=1;$i<1000;$i++){
  43.         echo $i."<br>";
  44. }

  45. $timer->stop();

  46. echo "run time ".$timer->spent()."";

  47. */
  48. ?>
  49.   
复制代码

小东西。

[ Last edited by 梦 on 2003-7-17 at 09:27 AM ]
签名被屏蔽

18

主题

5462

帖子

6347

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
86
鲜花
26
注册时间
2002-6-13

落伍手机绑定

发表于 2003-7-17 10:34:05 | 来自 中国河北邢台

  1. //调试时间类;
  2. class Debug {
  3.     function startTimer() {
  4.         global $starttime;
  5.         $mtime = microtime ();
  6.         $mtime = explode (' ', $mtime);
  7.         $mtime = $mtime[1] + $mtime[0];
  8.         $starttime = $mtime;
  9.     }
  10.     function endTimer() {
  11.         global $starttime;
  12.         $mtime = microtime ();
  13.         $mtime = explode (' ', $mtime);
  14.         $mtime = $mtime[1] + $mtime[0];
  15.         $endtime = $mtime;
  16.         $totaltime = round (($endtime - $starttime), 5);
  17.         return $totaltime;
  18.     }
  19. }


复制代码



取开始时间
$test_time=new debug;
$test_time->startTimer() ;

输出给束时间
$time=$test_time->endTimer();
echo"$time";
Life is short, You need Python.cn
论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-6-3 23:51 , Processed in 0.143492 second(s), 35 queries , Gzip On.

返回顶部