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

作成日: 更新日:

getMessageメソッドは、PHPの型に関するエラーを示すTypeErrorクラスのインスタンスから、そのエラーメッセージ文字列を取得するメソッドです。

TypeErrorは、関数やメソッドの引数、戻り値、プロパティの型宣言に違反した場合など、PHPのプログラム実行中に型に関する不正な操作があった際に発生する例外です。このgetMessageメソッドは、発生した型エラーがどのような内容であったかを示す詳細なテキスト情報を取得するために利用されます。

このメソッドは、PHPのすべての例外やエラーの基底インターフェースであるThrowableによって定義されており、引数を取りません。呼び出されると、常にエラーの内容を記述した文字列を返します。

例えば、try-catchブロックでTypeErrorを捕捉した場合、捕捉した例外オブジェクトに対して$exception->getMessage()のようにこのメソッドを呼び出すことで、エラーメッセージを取得できます。取得したメッセージは、ログへの出力や、ユーザーへの分かりやすいエラー通知に活用されます。

型エラーの原因を特定するデバッグ作業において、このメソッドが提供する具体的なエラー情報は非常に重要です。また、システムが型エラーに遭遇した際に、適切なエラーハンドリングを行い、状況を正確に把握することで、プログラムの堅牢性と保守性を向上させることにも寄与します。

基本的な使い方

構文(syntax)

1<?php
2
3function sum(int $a, int $b): int
4{
5    return $a + $b;
6}
7
8try {
9    sum(10, 'string'); // int型を期待する引数にstring型を渡すことでTypeErrorが発生
10} catch (TypeError $e) {
11    echo $e->getMessage(); // TypeErrorオブジェクトからエラーメッセージを取得して表示
12}
13
14?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

このメソッドは、TypeErrorが発生した際の詳細なエラーメッセージを文字列として返します。

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