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 巧用数组降低程序的时间复杂度
Jan 01 PHP
php 面向对象的一个例子
Apr 12 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
PHP将字符分解为多个字符串的方法
Nov 22 PHP
VPS中使用LNMP安装WordPress教程
Dec 28 PHP
PHP使用mysqldump命令导出数据库
Apr 14 PHP
PHP实现导出带样式的Excel
Aug 28 PHP
php插件Xajax使用方法详解
Aug 31 PHP
PHP格式化显示时间date()函数代码
Oct 03 PHP
Laravel配置全局公共函数的方法步骤
May 09 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
Oct 18 PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 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+dbfile开发小型留言本
2006/10/09 PHP
php 删除数组元素
2009/01/16 PHP
解析PHP实现下载文件的两种方法
2013/07/05 PHP
php单例模式实现方法分析
2015/03/14 PHP
php生成数字字母的验证码图片
2015/07/14 PHP
基于PHP实现通过照片获取ip地址
2016/04/26 PHP
Yii2中事务的使用实例代码详解
2016/09/07 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
PHP7内核之Reference详解
2019/03/14 PHP
Javascript 中文字符串处理额外注意事项
2009/11/15 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
前端js文件合并的三种方式推荐
2016/05/19 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
浅谈 Vue 项目优化的方法
2017/12/16 Javascript
vue中的provide/inject的学习使用
2018/05/09 Javascript
AngularJS 前台分页实现的示例代码
2018/06/07 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
Angular angular-file-upload文件上传的示例代码
2018/08/23 Javascript
jquery登录的异步验证操作示例
2019/05/09 jQuery
Jquery 获取相同NAME 或者id删除行操作
2020/08/24 jQuery
Swiper实现导航栏滚动效果
2020/10/16 Javascript
一篇不错的Python入门教程
2007/02/08 Python
使用Python的Supervisor进行进程监控以及自动启动
2014/05/29 Python
Python 26进制计算实现方法
2015/05/28 Python
python如何将图片转换为字符图片
2020/08/19 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
如何用Python制作微信好友个性签名词云图
2019/06/28 Python
详解Python 函数参数的拆解
2020/09/02 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
Peter Millar官网:美国高档生活服饰品牌
2018/07/02 全球购物
英国IT硬件供应商,定制游戏PC:Mesh Computers
2019/03/28 全球购物
巾帼志愿者活动方案
2014/08/17 职场文书
幼儿园托班开学寄语(2015秋季)
2015/05/27 职场文书