php的declare,php中的declare结构

本文详细介绍了PHP中的declare语句,用于指定代码执行指令,如编码、类型检查和计时事件。ticks参数允许每执行一定数量的语句触发事件,通过register_tick_function注册回调函数。示例中展示了ticks如何影响代码执行,强调了declare语句必须在文件顶部且不能使用变量或常量。
摘要由CSDN通过智能技术生成

declare结构用来设定一段代码执行指令的行为

可选的行为指令有三个:

encoding="coding_str":为代码指定其编码方式

strict_types=1|0:调用函数传值是否应用严格类型,需要在编译时指定--enable-zend-multibyte,否则declare中的encoding值会被忽略

ticks=N:代码中解释器每执行N条可计时的低级语句就会触发的事件

declare语句的格式有两个:

declare(ticks=1) {

// 这里写完整的运行代码

}

declare(ticks=1);

// 这里写完整的运行代码

传入的指令是在文件编译时处理的,所以指令只接受字面量的值,无法使用变量和常量

// 这样是有效的

declare(ticks=1);

// 这样是无效的:

const TICK_VALUE = 1;

declare(ticks=TICK_VALUE);

ticks指令

不是所有语句都可计时。通常条件表达式和参数表达式都不可计时。

在每个tick中出现的事件由register_tick_function()来指定由unregister_tick_function()来取消

declare(ticks=1);

// 定义事件函数

function tick_handler(){

echo "tick_handler() called\n";

}

// 注册事件函数

register_tick_function('tick_handler');

$a = 1;

if ($a > 0) {

$a += 2;

print($a);

}

注册事件函数之后的代码等同于

$a = 1;

tick_handler();

if ($a > 0) {

$a += 2;

tick_handler();

print($a);

tick_handler();

}

tick_handler();

最后编辑:2021-01-31作者:qingheluo

5aea90233e4bbc88135a027c2de2596a.png

这个作者貌似有点懒,什么都没有留下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值