PHP:declare的用法詳解

黄舟
發布: 2023-03-11 11:30:01
原創
12925 人瀏覽過

declare 結構用來設定一段程式碼的執行指令。 declare 的語法和其它流程控制結構相似:

declare (directive)
   statement

##directive 部分允許設定程式碼片段的行為。目前只認識兩個指示:ticks(更多資訊請見下面 ticks 指令)以及encoding(更多資訊請見下面 encoding 指令)。

Note: encoding 是 PHP 5.3.0 新增指令。

declare 程式碼段中的 statement 部分將被執行-如何執行以及執行上有什麼副作用出現取決於 directive 中設定的指令。

declare 結構也可用於全域範圍,影響到其後的所有程式碼(但如果有 declare 結構的檔案被其它檔案包含,則對包含它的父檔案不起作用)。

<? 
    declare (ticks = 1); //这句这么写表示全局的脚本都做处理
    function foo() { //注册的函数
        static $no;
        $no++;
        echo $no."======";
        echo microtime()."\n";
    } 
    register_tick_function("foo"); //注册函数,后面可以跟第2个参数,表示函数的参数
    $a = 1;
    for($i=0;$i<5;$i++) { //这里的循环也是语句,会做一次判断$i<5的判断执行
        $b = 1;
    }
    ?>
登入後複製

declare 偵錯內部程式使用.

先簡單說明,declare這個函數只支援一個參數就是ticks,函數表示記錄程式區塊,需配合register_tick_function 函數使用。 ticks參數表示執行多少語句呼叫一次register_tick_function的函數。並且declare支援兩種寫法:
1. declare(ticks = 1); 整個腳本
2. declare(ticks = 1) { 內部的程式碼做記錄

}
上述程式碼除了函數體內,外部都會被執行,運行可以看執行次數和時間. 他跟適合做測試程式碼段中每一步分的執行時間和執行次數. 
declare 必須是全局的,放在程式外部.
tick 代表一個
事件,事件的定義是在register_tick_function;事件的執行頻率是在(ticks=3)。 表示事件頻率是執行3個才記錄一次. microtime() 的列印時間.

以上是PHP:declare的用法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板