関数 xdebug_get_function_stack

関数 xdebug_get_function_stack は、現在の関数呼び出しスタックの情報を含む配列を返します。配列の各要素は、呼び出しに関するデータを持つ連想配列です。この関数を動作させるには、Xdebug拡張機能がインストールされている必要があります。

構文

phpxdebug_get_function_stack();

例

呼び出しスタックを取得する簡単な例:

php<?php
  function test() {
    var_dump(xdebug_get_function_stack());
  }
  test();
?>

コードの実行結果:

php[
  [
    'function' => 'test',
    'file' => '/path/to/file.php',
    'line' => 4,
    'params' => []
  ],
  [
    'function' => '{main}',
    'file' => '/path/to/file.php',
    'line' => 5,
    'params' => []
  ]
]

例

ネストされた関数呼び出しの例:

php<?php
  function inner() {
    return xdebug_get_function_stack();
  }
  function outer() {
    return inner();
  }
  $res = outer();
  print_r($res);
?>

コードの実行結果:

php[
  [
    'function' => 'inner',
    'file' => '/path/to/file.php',
    'line' => 3,
    'params' => []
  ],
  [
    'function' => 'outer',
    'file' => '/path/to/file.php',
    'line' => 6,
    'params' => []
  ],
  [
    'function' => '{main}',
    'file' => '/path/to/file.php',
    'line' => 8,
    'params' => []
  ]
]

関連項目

  • 関数 debug_backtrace,
    これは呼び出しスタックに関する同様の情報を返します