php的declare控制符和ticks教程(附示例)


Posted in PHP onMarch 21, 2014

declare 结构用来设定一段代码的执行指令,它的语法结构如下:

declare (directive)
statement

不懂?通俗解释如下:declare是PHP的流程控制结构,directive目前支持两个指令【ticks和encoding】,ticks的使用需配合register_tick_function函数(当然还有unregister_tick_function函数)使用。ticks参数表示运行多少语句调用一次register_tick_function的函数。
register_tick_function函数定义了每个tick事件发生时的处理函数。那么什么是tick事件呢?
ick是一个事件。
tick事件在PHP每执行N条低级语句就发生一次,N由declare语句指定。
可以用register_tick_function()来指定tick事件发生时应该执行的操作。

问题又来了,什么是低级语句呢?它包括:
简单语句:空语句(就一个;号),return, break, continue, throw, goto, global, static, unset, echo,  内置的HTML文本,分号结束的表达式等均算一个语句。
复合语句:完整的if/elseif, while, do...while, for, foreach, switch, try...catch等算一个语句。
语句块:{} 括出来的语句块。
最后特别的:declare块本身也算一个语句(按道理declare块也算是复合语句,但此处特意将其独立出来)。

看一个简单的例子:

function do_tick()
{
echo "<font color=red>do_tick</font>";
}
register_tick_function('do_tick');
declare(ticks = 1)
{
        for($i = 1; $i < 5; $i++)
        {
                echo "<font color=blue>{$i}</font><br>";
        }
}
PHP 相关文章推荐
利用PHP动态生成VRML网页
Oct 09 PHP
php FPDF类库应用实现代码
Mar 20 PHP
php 提速工具eAccelerator 配置参数详解
May 16 PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
Apr 23 PHP
使用PHP实现蜘蛛访问日志统计
Jul 05 PHP
腾讯QQ微博API接口获取微博内容
Oct 30 PHP
php中require和require_once的区别说明
Feb 27 PHP
thinkphp3.2.3 分页代码分享
Jul 28 PHP
php版微信公众平台入门教程之开发者认证的方法
Sep 26 PHP
PHP 获取指定地区的天气实例代码
Feb 08 PHP
centos7上编译安装php7以php-fpm方式连接apache
Nov 08 PHP
PHP Web表单生成器案例分析
Jun 02 PHP
php像数组一样存取和修改字符串字符
Mar 21 #PHP
easyui的tabs update正确用法分享
Mar 21 #PHP
php设置session值和cookies的学习示例
Mar 21 #PHP
一个显示效果非常不错的PHP错误、异常处理类
Mar 21 #PHP
一漂亮的PHP图片验证码实例
Mar 21 #PHP
PHP中nowdoc和heredoc使用需要注意的一点
Mar 21 #PHP
php获取表单中多个同名input元素的值
Mar 20 #PHP
You might like
PHP安全配置
2006/10/09 PHP
PHP如何编写易读的代码
2007/07/10 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
Thinkphp5.0自动生成模块及目录的方法详解
2017/04/17 PHP
PHP使用PDO抽象层获取查询结果的方法示例
2018/05/10 PHP
解决在Laravel 中处理OPTIONS请求的问题
2019/10/11 PHP
用jQuery扩展自写的 UI导航
2010/01/13 Javascript
jquery预览图片实现鼠标放上去显示实际大小
2014/01/16 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
2014/11/23 Javascript
移动设备web开发首选框架:zeptojs介绍
2015/01/29 Javascript
JS实现仿中关村论坛评分后弹出提示效果的方法
2015/02/23 Javascript
jquery实现手机号码选号的方法
2015/07/31 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
2015/08/31 Javascript
学习JavaScript鼠标响应事件
2015/12/25 Javascript
学习javascript面向对象 掌握创建对象的9种方式
2016/01/04 Javascript
基于jQuery实现鼠标点击导航菜单水波动画效果附源码下载
2016/01/06 Javascript
vue-hook-form使用详解
2017/04/07 Javascript
vue开发调试神器vue-devtools使用详解
2017/07/13 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
AngularJs1.x自定义指令独立作用域的函数传入参数方法
2018/10/09 Javascript
LayUI数据接口返回实体封装的例子
2019/09/12 Javascript
[02:15]2015国际邀请赛选手档案IG.Ferrari 430
2015/07/30 DOTA
python的迭代器与生成器实例详解
2014/07/16 Python
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
python 格式化输出百分号的方法
2019/01/20 Python
浅谈PyTorch的可重复性问题(如何使实验结果可复现)
2020/02/20 Python
python多线程爬取西刺代理的示例代码
2021/01/30 Python
HTML5的结构和语义(1):前言
2008/10/17 HTML / CSS
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
《我要的是葫芦》教学反思
2014/02/23 职场文书
婚前协议书范本
2014/04/15 职场文书
大学学习计划书范文
2014/05/02 职场文书
有限责任公司股东合作协议书
2014/12/02 职场文书
Redis读写分离搭建的完整步骤
2021/09/14 Redis