【PHP8.x】getPreviousメソッドの使い方
getPreviousメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
getPreviousメソッドは、例外が連鎖している場合に、現在の例外を引き起こした直前の例外(previous exception)を取得するメソッドです。PHPでは、ある例外を捕捉した際に、その例外を原因として新しい例外をスローすることができ、これを例外チェインと呼びます。例えば、下位レベルのデータベース接続エラーが原因で、より抽象的なデータ取得失敗エラーを発生させる場合などが考えられます。このとき、元の例外情報は失われず、新しい例外オブジェクトのコンストラクタを通じて内部に保持されます。getPreviousメソッドを使用すると、この内部に保持された、原因となった元の例外オブジェクトを取り出すことができます。もし連鎖された前の例外が存在しない場合、このメソッドはnullを返します。返された例外オブジェクトに対してさらにgetPreviousメソッドを呼び出すことで、例外の発生源を根本まで遡って調査することが可能となり、複雑なエラーのデバッグにおいて非常に役立ちます。このメソッドは基底クラスであるExceptionクラスで定義されているため、LogicExceptionクラスだけでなく、Exceptionを継承する全ての例外クラスで利用できます。
構文(syntax)
1public final LogicException::getPrevious(): ?Throwable
引数(parameters)
引数なし
引数はありません
戻り値(return)
?Throwable
このメソッドは、現在の例外の前にある例外オブジェクトを返します。 例外の連鎖がなく、前の例外が存在しない場合は null を返します。