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

作成日: 更新日:

getFileメソッドは、TypeErrorオブジェクトからエラーが発生したファイル名を取得するメソッドです。PHP 8で導入されたこのメソッドは、TypeErrorクラスに属しており、プログラムの実行中に引数の型が期待される型と一致しない場合などに発生する型エラー(TypeError)が発生した具体的なファイルパスを知るために使用されます。TypeErrorは、関数やメソッドに渡された引数の型が期待される型と合わない場合にスローされる例外の一種で、例えば数値を受け取る関数に文字列を渡してしまった場合などに発生します。このgetFileメソッドは、捕捉したTypeErrorオブジェクトから、エラーが実際に発生したPHPスクリプトのファイルパスを文字列として返します。

システムエンジニアを目指す初心者の方にとって、プログラムのエラーを効率的に特定し修正するデバッグは非常に重要なスキルです。try-catchブロックを使ってTypeErrorを捕捉した場合、このgetFileメソッドを利用することで、どのファイルで型エラーが起きたのかを正確に把握することができます。エラーメッセージだけでは問題の箇所が特定しにくい場合でも、ファイルパスが提供されることで、エラー発生源を迅速に特定し、効率的なデバッグ作業を進める上で不可欠な情報となります。これにより、堅牢で信頼性の高いアプリケーション開発に貢献します。

基本的な使い方

構文(syntax)

1<?php
2function processInteger(int $value): void {
3    echo "処理された値: " . $value . PHP_EOL;
4}
5
6try {
7    // int 型を期待する関数に string 型の値を渡して TypeError を発生させる
8    processInteger("not an integer");
9} catch (TypeError $e) {
10    // TypeError オブジェクトから getFile() メソッドを呼び出す構文
11    $fileName = $e->getFile();
12    echo "エラーが発生したファイル: " . $fileName . PHP_EOL;
13}
14?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

このメソッドは、例外が発生したソースコードのファイル名を文字列として返します。

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