【PHP8.x】getTraceAsStringメソッドの使い方

作成日: 更新日:

getTraceAsStringメソッドは、PHPのExceptionクラスに属し、プログラム実行中に例外が発生した際のスタックトレース情報を文字列形式で取得するメソッドです。スタックトレースとは、例外が発生した時点までの関数やメソッドの呼び出し履歴(コールスタックとも呼ばれます)を指します。このメソッドは、エラーの原因を特定し、デバッグ作業を行う上で極めて重要な情報を提供します。

具体的には、例外が発生したファイル名、その行番号、そしてその例外を引き起こした関数やメソッドの呼び出し順序が、整形された読みやすい文字列として返されます。これにより、開発者は「どのファイルで」「何行目で」「どのようなメソッドが呼び出された結果」「例外が発生したのか」といった一連の流れを瞬時に把握することができます。

例えば、try...catchブロックで例外を補足した際に、このgetTraceAsString()メソッドの戻り値をエラーログファイルに出力したり、開発者向けのエラー画面に表示したりすることで、効率的に問題の原因を解析し、修正点を見つける手助けとなります。この文字列は、すでに人間が読みやすいようにフォーマットされているため、取得後に追加の加工をすることなくそのまま利用できる利便性があります。例外発生時の詳細な状況を正確に把握し、迅速な対応を行うための、Exceptionクラスが提供する基本的な機能の一つです。

基本的な使い方

構文(syntax)

1<?php
2
3function causeError()
4{
5    throw new Exception('An error occurred.');
6}
7
8try {
9    causeError();
10} catch (Exception $e) {
11    // 例外のスタックトレースを文字列として取得します。
12    $traceString = $e->getTraceAsString();
13    echo $traceString;
14}
15
16?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

例外発生時のコールスタック情報を、整形された文字列として取得します。

【PHP8.x】getTraceAsStringメソッドの使い方 | いっしー@Webエンジニア