ホームページ  >  記事  >  バックエンド開発  >  呼び出し位置でデバッグ情報を出力する PHP の debug_backtrace() 関数について

呼び出し位置でデバッグ情報を出力する PHP の debug_backtrace() 関数について

不言
不言オリジナル
2018-07-14 17:09:021831ブラウズ

この記事では主に、PHP の debug_backtrace() 関数 print 呼び出しに関するデバッグ情報を紹介します。これには特定の参考値があります。ここで共有します。必要な友人は参照してください。

debug_backtrace

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

debug_backtrace — バックトレースの生成

#説明

##array

debug_backtrace ([ int $options = DEBUG_BACKTRACE_PROVIDE_OBJECT [, int $limit = 0 ]] )#debug_backtrace () PHP バックトレースを生成します。

パラメータ

オプション
  • 5.3.6 以降、このパラメータは次のとおりです。次のオプションのビットマスク:

  • debug_backtrace() オプション

    「」を入力するかどうかオブジェクト」インデックス。 すべての関数/メソッド パラメーターを含む「args」のインデックスを無視するかどうかにより、メモリのオーバーヘッドを節約できます。 5.3.6 より前では、使用できる値は TRUE または
    DEBUG_BACKTRACE_PROVIDE_OBJECT
    DEBUG_BACKTRACE_IGNORE_ARGS
    FALSE

    のみであり、それぞれ等しい値でした。 DEBUG_BACKTRACE_PROVIDE_OBJECT オプションを設定するかどうか。

    limit
  • 5.4.0 以降、このパラメータを使用して、返されるスタック フレームの数を制限できます。 。デフォルトは (

    limit
  • =
  • 0

    ) で、すべてのスタック フレームを返します。 戻り値

  • 多数の連想配列を含む
配列を返します。返される可能性のある要素:

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

Typefunctionstringintegerstringstringobjectstringarray
Name
Description
現在の関数名については、__FUNCTION__ を参照してください。 line
現在の行番号。 「__LINE__」を参照してください。 file
現在のファイル名。 「__FILE__」を参照してください。 class
現在のクラスの名前。 __CLASS__ object
現在のオブジェクトを参照してください。 type
現在の通話のタイプ。メソッドの場合は「->」が返されます。静的メソッドの場合は「::」が返されます。関数呼び出しの場合は null を返します。 args
関数内の場合、関数のパラメーターがリストされます。インクルードファイル内にある場合は、インクルードファイル名が表示されます。 #更新ログ

バージョン

説明#5.4.0オプションのパラメータ limit を追加しました。 パラメータ provide_object は に変更され、オプションのパラメータ オプションのパラメータ provide_object を追加しました。 現在の オブジェクトを返される可能性のある要素として追加しました。
5.3.6
optionsDEBUG_BACKTRACE_IGNORE_ARGS が追加されました。 5.2.5
5.1.1

例 #1 debug_backtrace() 例

<?php
// filename: /tmp/a.php
function a_test($str)
{
    echo "\nHi: $str";
    var_dump(debug_backtrace());
}
a_test(&#39;friend&#39;);
?>
<?php
// filename: /tmp/b.php
include_once &#39;/tmp/a.php&#39;;
?>

実行 返される結果は次のようになります:

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"
  }
}

上記は次のとおりです。記事全体 内容, 皆様の学習に役立つことを願っています. 関連コンテンツの詳細については、PHP 中国語 Web サイトに注目してください。

関連する推奨事項:

PHP で var_export を使用する方法

PHP 条件演算子で発生した問題と解決策について
#

以上が呼び出し位置でデバッグ情報を出力する PHP の debug_backtrace() 関数についての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。