【PHP8.x】codeプロパティの使い方
作成日: 更新日:
code
プロパティは、ValueError
クラスが表現する値のエラーに関連するエラーコードを保持するプロパティです。PHP 8で導入されたValueError
は、関数の引数が正しいデータ型であるにもかかわらず、その値が論理的に不正であるか、受け入れられない範囲にある場合にスローされる例外です。
このcode
プロパティは、発生したValueError
に付随する特定の数値コードを格納します。これにより、プログラムはエラーの種類をより詳細に識別しやすくなります。例えば、ある関数が期待する引数の値が特定の条件を満たさない場合、その条件に応じたユニークなエラーコードをこのプロパティに設定することができます。
通常、カスタムのエラーコードが明示的に指定されない限り、このcode
プロパティの値は0
となります。しかし、より複雑なアプリケーションやライブラリでは、エラーの種類や原因を細かく区別するために、0
以外の特定の数値を設定し、エラーハンドリングの際にその値を利用することが推奨されます。
システムエンジニアがエラー処理を実装する際、try-catch
ブロックでValueError
を捕捉し、このcode
プロパティの値を確認することで、エラーの種類に応じた適切なログ記録や、ユーザーへのフィードバック、あるいは回復処理を実行することが可能になります。これは、PHPの全ての例外やエラーの基底となるThrowable
インターフェースに定義されているgetCode()
メソッドが返す値と連携しており、一貫したエラーハンドリング戦略を構築する上で非常に重要な役割を果たします。
基本的な使い方
構文(syntax)
1<?php 2try { 3 throw new ValueError("An invalid value was provided.", 1001); 4} catch (ValueError $e) { 5 echo $e->code; 6}
引数(parameters)
戻り値(return)
int
ValueError
クラスの code
プロパティは、発生したエラーの種類を示す整数値を返します。