PHP 使用 Declare ?什么是价格变动?

2022-08-30 14:56:24

我对PHP函数有点困惑。declare

单笔价格变动到底是什么?我以为一个刻度等于一行代码?

但是如果我使用:

function myfunc() {
        print "Tick";   
}

register_tick_function("myfunc");

declare(ticks=1) {
   echo 'foo!bar';
}

脚本打印:

“滴答”2次??


答案 1

您每行都会得到一个刻度 ;和每个块 {} 尝试:

declare(ticks=1) echo 'foo!bar';

没有块,没有额外的滴答声。

declare(ticks=1) {{ echo 'foo!bar'; }}

更多无关的区块 = 更多刻度。

PS:顺便说一句,蜱虫是相当奇特的功能,它们仅在少数极其罕见的情况下有用。它们不等同于线程或任何东西。如果对您来说,勾选是问题的解决方案,那么您应该在另一个问题中发布您的问题,因为它可能不是正确的解决方案。


答案 2

您正走在正确的轨道上,什么是勾号。

http://www.tuxradar.com/practicalphp/4/21/0

简而言之,逐笔报价是 PHP 中每次执行一定数量的语句时在 PHP 内部发生的特殊事件。这些语句是 PHP 的内部语句,与脚本中的语句大致对应。您可以使用 declare() 函数控制设置价格变动所需的语句数,并且可以使用 register_tick_function() 函数注册在发生价格变动时执行的函数。如前所述,declare 的语法非常不寻常,所以要准备好迎接冲击!


推荐