多语言展示
当前在线:1139今日阅读:84今日分享:32

PHP declare控制符及ticks的例子详解

declare是PHP的流程控制结构,directive目前支持两个指令【ticks和encoding】,ticks的使用需配合register_tick_function函数(当然还有unregister_tick_function函数)使用。
方法/步骤
1

declare 结构用来设定一段代码的执行指令,它的语法结构如下:  declare (directive)  statement  不懂?通俗解释如下:  ticks参数表示运行多少语句调用一次register_tick_function的函数。  register_tick_function函数定义了每个tick事件发生时的处理函数。那么什么是tick事件呢?  tick是一个事件。  tick事件在PHP每执行N条低级语句就发生一次,N由declare语句指定。  可以用register_tick_function()来指定tick事件发生时应该执行的操作。  问题又来了, 1688gfl.com 什么是低级语句呢?它包括:  简单语句:空语句(就一个;号),return, break, continue, throw, goto, global, static, unset, echo,  内置的HTML文本,分号结束的表达式等均算一个语句。  复合语句:完整的if/elseif, while, do...while, for, foreach, switch, try...catch等算一个语句。

2

语句块:{} 括出来的语句块。  最后特别的:declare块本身也算一个语句(按道理declare块也算是复合语句,但此处特意将其独立出来)。  看一个简单的例子:  代码如下复制代码  /**  * declare* @link  */  function do_tick()  {        echo 'do_tick';  }  register_tick_function('do_tick');  declare(ticks = 1)  {  for($i = 1; $i < 5; $i++)  {  echo '{$i}
';  }  }  上面这段程序的运行结果:  PHP declare控制符及ticks的例子详解  PHP declare控制符及ticks详细教程对结果解释下:  第一次进入for循环, 2144xiaoshuo.com 执行echo后执行第一次do_tick函数;  第一次for循环结束后;执行第二次do_tick函数;  循环四次......;

3

第五次进行for循环,条件不满足,for循环结束,执行一次do_tick函数;  declare本身也是一条语句,也要执行一次do_tick函数。  从上可以看出,declare和ticks可以用来做调试或性能测试。

推荐信息