declare是PHP的流程控制結構,directive目前支持兩個指令,ticks的使用需配合register_tick_function函數(shù)使用,看下面的小示例吧
declare 結構用來設定一段代碼的執(zhí)行指令,它的語法結構如下:
代碼如下:
declare (directive)
statement
不懂?通俗解釋如下:declare是PHP的流程控制結構,directive目前支持兩個指令【ticks和encoding】,ticks的使用需配合register_tick_function函數(shù)(當然還有unregister_tick_function函數(shù))使用。ticks參數(shù)表示運行多少語句調(diào)用一次register_tick_function的函數(shù)。
register_tick_function函數(shù)定義了每個tick事件發(fā)生時的處理函數(shù)。那么什么是tick事件呢?
ick是一個事件。
tick事件在PHP每執(zhí)行N條低級語句就發(fā)生一次,N由declare語句指定。
可以用register_tick_function()來指定tick事件發(fā)生時應該執(zhí)行的操作。
問題又來了,什么是低級語句呢?它包括:
簡單語句:空語句(就一個;號),return, break, continue, throw, goto, global, static, unset, echo, 內(nèi)置的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>";
}
}
更多信息請查看IT技術專欄