PHP ticks 机制
一、怎么定义 ticks 机制
PHP 提供 declare 关键字和 ticks 关键字来声明 ticks 机制。如:declare(ticks = N);
tick 是一个事件
tick 事件在每运行 N 条 low-level statements 就会放生一次,N 由 declare 语句指定(Zend 引擎每执行 1 条低级语句就去执行一次 register_tick_function() 注册的函数。)
能够用 register_tick_function() 来指定时间的 handler,unregister_tick_function() 与之相应
可以粗略的理解为每执行一句 php 代码(例如:$num=1;)就去执行下已经注册的 tick 函数。
二、low-level statements 低级语句包含哪些?
1、简单语句:空语句。return, break, continue, throw, goto, global, static, unset, echo, 内置的HTML文本。分号结束的表达式等均算一个语句。
2、复合语句:完整的 if、elseif, while, do...while, for, foreach, switch, try...catch 等算一个语句
3、语句块:{} 大括号算一个语句块
4、declare 本身算一个复合语句
三、tick 的坑
一定要注意的一点是:declare() 不是一个函数。准确的说,他是说一个语言结构。因此可能会有一些你意想不到的行为。比方说,当你在一个文件中多次用到 declare() 时,其解析的原则是:谁在我前面而且离我近我就用谁,全然无视你的代码逻辑。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: PHP 中 Session 过期时间
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论