debug_backtrace

(PHP 4 >= 4.3.0, PHP 5)

debug_backtrace --  バックトレースを生成する

説明

array debug_backtrace ( void )

debug_backtrace()は、PHPバックトレースを生成し、 この情報を連想配列として返します。返される可能性がある要素を以下の 表に示します。

表 1. debug_backtrace()から返される可能性がある要素

名前説明
functionstring カレントの関数名。 __FUNCTION__ も参照して下さい。
lineinteger カレントの行番号。 __LINE__ も参照して下さい。
filestring カレントのファイル名。 __FILE__ も参照して下さい。
classstring カレントのクラス名。 __CLASS__ も参照して下さい。
typestring カレントのクラス型。
argsarray 関数の内部の場合、関数の引数のリストとなります。 インクルードされたファイル内では、読み込まれたファイルの名前と なります。

以下に簡単な例を示します。

例 1. debug_backtrace()の例

// ファイル名: a.php
<?php

function a_test($str) {

    print
"\nHi: $str";

    
var_dump(debug_backtrace());
}

a_test('friend');
?>

// ファイル名: b.php
<?php
include_once '/tmp/a.php';
?>

/* /tmp/b.php を実行した際の結果

Hi: friend
array(2) {
  [0]=>
  array(4) {
    ["file"] => string(10) "/tmp/a.php"
    ["line"] => int(10)
    ["function"] => string(6) "a_test"
    ["args"]=>
    array(1) {
      [0] => &string(6) "friend"
    }
  }
  [1]=>
  array(4) {
    ["file"] => string(10) "/tmp/b.php"
    ["line"] => int(2)
    ["args"] =>
    array(1) {
      [0] => string(10) "/tmp/a.php"
    }
    ["function"] => string(12) "include_once"
  }
}
*/

trigger_error()も参照して下さい。