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

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

作成日: 更新日:

基本的な使い方

getLineメソッドは、BadFunctionCallException例外がスローされたソースコード上の行番号を取得するために実行するメソッドです。このメソッドは、PHPの例外処理の基本となるExceptionクラスで定義されており、BadFunctionCallExceptionクラスはこれを継承しているため利用できます。したがって、他の多くの例外クラスでも同様に使用することが可能です。BadFunctionCallExceptionは、存在しない関数を呼び出そうとした場合や、関数に渡す引数が不足している場合など、関数呼び出しに関するエラーが発生した際にスローされます。プログラムの実行中にこの例外が発生した際、try-catch構文で捕捉した例外オブジェクトに対してgetLineメソッドを呼び出すことで、問題が発生した具体的な行を特定できます。この機能は、デバッグ作業においてエラーの原因を迅速に突き止めるために不可欠です。取得した行番号は、getFileメソッドで得られるファイル名と組み合わせることで、エラー箇所の特定をより正確に行えます。メソッドの返り値は、行番号を表す整数値となります。

構文(syntax)

1<?php
2
3try {
4    // 存在しない関数をコールバックとして呼び出そうとする
5    call_user_func('non_existent_function');
6} catch (BadFunctionCallException $e) {
7    // 例外がスローされた行番号を取得する
8    $line = $e->getLine();
9    echo "例外がスローされた行番号: " . $line;
10}

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

このメソッドは、例外が発生したソースコードの行番号を整数で返します。