debug_backtrace バックトレースを生成する &reftitle.description; arraydebug_backtrace intoptionsDEBUG_BACKTRACE_PROVIDE_OBJECT intlimit0 debug_backtrace は PHP バックトレースを生成します。 &reftitle.parameters; options このパラメータは次のオプションのビットマスクとなります。 <function>debug_backtrace</function> のオプション DEBUG_BACKTRACE_PROVIDE_OBJECT "object" インデックスを埋めるかどうか。 DEBUG_BACKTRACE_IGNORE_ARGS "args" インデックス、 すなわちすべての関数/メソッドの引数を省略してメモリを節約するかどうか。
可能な組み合わせは以下の4つです: <function>debug_backtrace</function> のオプション debug_backtrace() インデックスを両方収集します。 debug_backtrace(DEBUG_BACKTRACE_PROVIDE_OBJECT) debug_backtrace(1) debug_backtrace(0) インデックス "object" を省略し、"args" を収集します。 debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS) インデックス "object""args"両方省略します。 debug_backtrace(2) debug_backtrace(DEBUG_BACKTRACE_PROVIDE_OBJECT|DEBUG_BACKTRACE_IGNORE_ARGS) インデックス "object" を収集し、"args" を省略します。 debug_backtrace(3)
limit このパラメータを使ってスタックフレームの数を制限できます。 デフォルト (limit=0) は、すべてのスタックフレームを返します。
&reftitle.returnvalues; 連想配列の配列を返します。連想配列の要素として返される可能性があるものは以下のとおりです。 <function>debug_backtrace</function> から返される可能性がある要素 &Name; &Type; &Description; function string カレントの関数名。 __FUNCTION__ も参照ください。 line int カレントの行番号。 __LINE__ も参照ください。 file string カレントのファイル名。 __FILE__ も参照ください。 class string カレントのクラス名。 __CLASS__ も参照ください。 object object カレントのオブジェクト。 type string カレントのコール方式。メソッドを呼び出している場合は "->"、 staticメソッドを呼び出している場合は "::" が返されます。 関数呼び出しの場合は何も返されません。 args array 関数の内部の場合、関数の引数のリストとなります。 インクルードされたファイル内では、 読み込まれたファイルの名前となります。
&reftitle.examples; <function>debug_backtrace</function> の例 ]]> /tmp/b.php を実行した際の結果は以下のようになります。 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" } } ]]> &reftitle.seealso; trigger_error debug_print_backtrace