【PHP8.x】lineプロパティの使い方

lineプロパティの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

lineプロパティは、例外がスローされたソースコードの行番号を保持するプロパティです。このプロパティは、PHPの基本的な例外クラスであるExceptionクラスで定義されており、LogicExceptionクラスはそれを継承して利用します。プログラムの実行中に、設計上の誤りや矛盾といった論理的なエラーが発生してLogicExceptionがスローされると、PHPエンジンはその例外が発生した時点での行番号を自動的にこのプロパティに設定します。この情報は、開発者がエラーの原因を特定する上で非常に重要であり、デバッグ作業を迅速かつ正確に進めるために不可欠です。ただし、lineプロパティはprotectedとして宣言されているため、オブジェクトの外部から直接アクセスすることはできません。この値を取得するためには、公開されているgetLine()メソッドを使用する必要があります。try...catchブロックで例外オブジェクトを捕捉し、そのオブジェクトに対してgetLine()メソッドを呼び出すことで、エラーが発生した具体的な行番号を取得できます。

構文(syntax)

1<?php
2
3try {
4    // この行で LogicException を意図的にスローします
5    throw new LogicException("これはテスト用のロジックエラーです。");
6} catch (LogicException $e) {
7    // 捕捉した例外オブジェクトの getLine() メソッドを使い、
8    // 例外がスローされた行番号を取得して表示します。
9    // $e->line プロパティは protected のため、通常はこのメソッド経由でアクセスします。
10    echo "エラーが発生した行番号: " . $e->getLine();
11}

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

このプロパティは、例外が発生したソースコードの行番号を整数型で返します。