最新的Web開發教程
 

PHP debug_backtrace() Function

<PHP誤差基準

生成一個PHP回溯:

<?php
function a($txt) {
    b("Glenn");
}
function b($txt) {
    c("Cleveland");
}
function c($txt) {
    var_dump(debug_backtrace());
}
a("Peter");
?>

上面的代碼將輸出是這樣的:

Array (
    [0] => Array (
        [file] => C:\webfolder\test.php
        [line] => 6
        [function] => c
        [args] => Array (
            [0] => Cleveland
        )
    )
    [1] => Array (
        [file] => C:\webfolder\test.php
        [line] => 3
        [function] => b
        [args] => Array (
            [0] => Glenn
        )
    )
    [2] => Array (
        [file] => C:\webfolder\test.php
        [line] => 11
        [function] => a
        [args] => Array (
            [0] => Peter
        )
    )
)


定義和用法

所述debug_backtrace()函數生成一個PHP回溯。

這個函數從導致到代碼顯示數據debug_backtrace()函數。

返回關聯數組的數組。 可能返回的元素是:

名稱 類型 描述
functionstring 當前的函數名
lineinteger 當前行號
filestring 當前文件名
classstring 當前的類名
objectobject 當前對象
typestring 當前的呼叫類型。 可能的呼叫:
  • 返回:“ - >” - 方法調用
  • 返回:“::” - 靜態方法調用
  • 返回什麼 - 函數調用
argsarray 如果一個函數裡面,它列出了函數的參數。 如果一個包含文件中,它列出了包含文件名

句法

debug_backtrace( options , limit ) ;

參數 描述
options

可選的。 指定以下選項的位掩碼:
DEBUG_BACKTRACE_PROVIDE_OBJECT(無論是否填充"object"指數
DEBUG_BACKTRACE_IGNORE_ARGS(不論是否省略"args"索引,並且所有的功能/方法參數,以節省存儲器)

limit 可選的。 限制打印的紙疊的幀的數量。 默認情況下(limit=0)將打印所有堆棧幀

技術細節

返回值: 沒有
PHP版本: 4.3+
PHP更新日誌: PHP 5.4:添加可選參數限制
PHP 5.3.6:參數provide_object改為選項和附加選項DEBUG_BACKTRACE_IGNORE_ARGS添加
PHP 5.2.5:添加可選參數provide_object
PHP 5.1.1:增加當前對象可能返回元素

<PHP誤差基準