【PHP8.x】getTraceメソッドの使い方
getTraceメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
『getTraceメソッドは、例外がスローされた時点のバックトレースを配列として取得するメソッドです。バックトレースとは、例外が発生するまでにプログラムがたどってきた関数やメソッドの呼び出し履歴のことを指します。このメソッドを利用することで、どのような処理の流れを経てエラー発生地点に至ったのかを正確に把握できるため、デバッグ作業において非常に重要な役割を果たします。返り値は多次元配列であり、配列の各要素が呼び出しスタックの一つの階層(フレーム)に対応します。各要素には、呼び出し元のファイルパスを示すfileキー、行番号を示すlineキー、呼び出された関数名やメソッド名を示すfunctionキー、そして渡された引数の配列を保持するargsキーなどが含まれています。UnderflowExceptionのような実行時エラーが発生した際にこのメソッドを使用することで、問題の操作がプログラムのどこから呼び出されたのかを特定し、原因究明を効率的に進めることが可能になります。このメソッドは基底クラスであるExceptionクラスから継承された機能です。
構文(syntax)
1<?php 2 3function cause_underflow() 4{ 5 throw new UnderflowException("An underflow exception occurred."); 6} 7 8try { 9 cause_underflow(); 10} catch (UnderflowException $e) { 11 $trace = $e->getTrace(); 12 print_r($trace); 13} 14 15?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
array
例外発生時のコールスタック(呼び出し履歴)の配列を返します。配列の各要素は、例外発生までの関数呼び出しやメソッド呼び出しの情報を格納しています。