<?php
/*
*
* Opcode 编号: 105
*/
// 被调用时记录时间的函数
function profile()
{
echo "profile function is called\n";
}
// 创建一个 tick 处理器
register_tick_function("profile");
// 在定义块之前初始化函数
profile();
// 运行代码块,每 2 次 tick 调用一次处理器
declare(ticks=2) {
for ($x = 0; $x < 10; ++$x) {
echo "hello world\n";
}
}
?>
函数名: (null)
编译后的变量: !0=$x
行号 | # | 操作 | 读取 | 扩展 | 返回 | 操作数 |
---|---|---|---|---|---|---|
7 | 0 | NOP | ||||
13 | 1 | SEND_VAL | 'profile' | |||
2 | DO_FCALL | 1 | 'register_tick_function' | |||
16 | 3 | DO_FCALL | 0 | 'profile' | ||
20 | 4 | ASSIGN | !0,0 | |||
5 | IS_SMALLER | ~3 | !0,10 | |||
6 | JMPZNZ | 9 | ~3,->13 | |||
7 | PRE_INC | !0 | ||||
8 | JMP | ->5 | ||||
21 | 9 | ECHO | 'hello+world%0A' | |||
10 | TICKS | 2 | ||||
22 | 11 | TICKS | 2 | |||
12 | JMP | ->7 | ||||
13 | TICKS | 2 | ||||
23 | 14 | TICKS | 2 | |||
24 | 15 | RETURN | 1 |
函数名: profile
编译后的变量: none
行号 | # | 操作 | 读取 | 扩展 | 返回 | 操作数 |
---|---|---|---|---|---|---|
9 | 0 | ECHO | 'profile+function+is+called%0A' | |||
10 | 1 | RETURN | null |