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

作成日: 更新日:

severityプロパティは、ErrorExceptionオブジェクトが表すエラーの深刻度(エラーレベル)を整数値として保持するプロパティです。このプロパティは、PHPの標準的なエラー処理機構において発生する警告(E_WARNING)、通知(E_NOTICE)、ユーザー定義エラー(E_USER_ERROR)といった、様々な種類のエラーのレベルを識別するために使用されます。

ErrorExceptionクラスは、PHPが通常発生させるエラーや警告を、例外(Exception)として捕捉し、統一的に処理できるようにするために存在します。開発者はこのErrorExceptionを利用することで、従来のC言語スタイルで扱われていたエラーを、オブジェクト指向の例外処理の枠組みで管理できるようになります。

このseverityプロパティに格納される整数値は、error_reporting関数などで指定するPHPのエラーレベル定数に対応しており、例えばE_WARNINGであれば2、E_NOTICEであれば8といった値が設定されます。これにより、捕捉したErrorExceptionオブジェクトがどのような種類のエラーを表しているのかをプログラム上で簡単に判別できます。例えば、特定の警告レベルのエラーだけをログに出力し、より深刻なエラーの場合にはユーザーに通知するといった、柔軟なエラーハンドリングロジックを実装する際に、このseverityプロパティが重要な役割を果たします。開発者はこの値を確認することで、エラーの種類に応じた適切な対応を決定し、システムの安定性と信頼性を高めることができます。

基本的な使い方

構文(syntax)

1<?php
2// ErrorExceptionのインスタンスを生成(または既存のものを取得)
3$errorException = new ErrorException('エラーメッセージ', 0, E_WARNING, __FILE__, __LINE__);
4
5// severityプロパティにアクセスして、エラーの深刻度を取得
6$errorSeverity = $errorException->severity;
7?>

引数(parameters)

戻り値(return)

int

このプロパティは、例外が発生した際の深刻度を示す整数値を返します。

【PHP8.x】severityプロパティの使い方 | いっしー@Webエンジニア