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

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

作成日: 更新日:

基本的な使い方

lineプロパティは、BadFunctionCallException例外が発生したソースコード内の行番号を保持するプロパティです。このプロパティは、PHPの全ての例外クラスの親であるExceptionクラスで定義されており、BadFunctionCallExceptionクラスがそれを継承しています。したがって、PHPで発生するほとんどの例外オブジェクトで、このlineプロパティを利用してエラーの発生箇所を特定できます。BadFunctionCallExceptionは、コールバック関数として存在しない関数が指定された場合や、関数呼び出し時に必須の引数が不足している場合など、関数呼び出しに関するロジックの誤りが原因で発生します。プログラムのデバッグ時には、try...catch構文を用いてこの例外を捕捉し、例外オブジェクトのgetLine()メソッドを通じてlineプロパティの値を取得します。この行番号情報をエラーログに出力することで、開発者は問題が発生したコード上の具体的な位置を迅速に突き止めることができ、効率的な原因究明と修正作業に繋がります。このように、lineプロパティは例外処理におけるデバッグ情報として非常に重要な役割を担っています。

構文(syntax)

1<?php
2
3try {
4    // BadFunctionCallExceptionを意図的にスローします。
5    throw new BadFunctionCallException();
6} catch (BadFunctionCallException $e) {
7    // getLine()メソッドを使って、例外がスローされた行番号を取得します。
8    $line_number = $e->getLine();
9    echo "例外がスローされた行: " . $line_number;
10}

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

BadFunctionCallException クラスの line プロパティは、例外が発生したコードの行番号を整数値で返します。