Chinaunix首页 | 论坛 | 博客
  • 博客访问: 196687
  • 博文数量: 43
  • 博客积分: 2178
  • 博客等级: 大尉
  • 技术积分: 390
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 15:19
文章分类

全部博文(43)

文章存档

2012年(23)

2011年(10)

2009年(10)

分类: 系统运维

2012-10-25 14:52:36


  1. <?
  2.     declare (ticks = 1); //这句这么写表示全局的脚本都做处理
  3.     function foo() { //注册的函数
  4.         static $no;
  5.         $no++;
  6.         echo $no."======";
  7.         echo microtime()."\n";
  8.     }
  9.     register_tick_function("foo"); //注册函数,后面可以跟第2个参数,表示函数的参数
  10.     $a = 1;
  11.     for($i=0;$i<5;$i++) { //这里的循环也是语句,会做一次判断$i<5的判断执行
  12.         $b = 1;
  13.     }
  14.     ?>
declare 调试内部程序使用.
先简单说明,declare这个函数只支持一个参数就是ticks,函数表示记录程序块,需配合register_tick_function 函数使用。ticks参数表示运行多少语句调用一次register_tick_function的函数。并且declare支持两种写法:
1. declare(ticks = 1); 整个脚本
2. declare(ticks = 1) { 内部的代码做记录

}

上述代码除了 函数体内,外部都会被执行,运行可以看执行次数和时间. 他跟适合做测试代码段中每一步分的执行时间 和执行次数.

declare 必须是全局的,放在程序外部.
tick 代表一个事件,事件的定义是在register_tick_function;事件的执行频率是在(ticks=3)。
表示事件频率是执行3个才记录一次. microtime() 的打印时间.


阅读(4081) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~