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

getTraceAsStringメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

『getTraceAsStringメソッドは、例外のスタックトレースを整形された文字列として取得するメソッドです。』このメソッドは、RuntimeException クラス、およびそれを継承したクラスのインスタンスから呼び出されます。スタックトレースとは、プログラムの実行中に例外が発生した時点に至るまでの、関数やメソッドの呼び出し履歴のことです。返される文字列には、どのファイルの何行目で、どのクラスのどのメソッドが呼び出されたかといった情報が、呼び出しの逆順で詳細に記録されています。この情報により、開発者はプログラムの実行フローを追い、エラーが発生した具体的な文脈を正確に把握することが可能になります。主に、try-catch構文で例外を捕捉した際に、デバッグ情報の表示やエラーログへの記録のために使用されます。getTrace()メソッドがトレース情報を配列として返すのに対し、このメソッドは人間が直接読みやすい形式の文字列を返すため、ログ出力などの用途に非常に便利です。

構文(syntax)

1<?php
2function a() {
3    b();
4}
5
6function b() {
7    throw new RuntimeException("An error occurred");
8}
9
10try {
11    a();
12} catch (RuntimeException $e) {
13    // 例外がスローされるまでの関数の呼び出し履歴(スタックトレース)を
14    // 文字列として取得し、出力します。
15    echo $e->getTraceAsString();
16}

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

例外発生時のトレース情報を、人間が読みやすい文字列形式で返します。