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

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

作成日: 更新日:

基本的な使い方

codeプロパティは、例外に関連付けられた整数型のエラーコードを保持するプロパティです。このプロパティはRangeExceptionクラスが独自に定義しているものではなく、PHPの全ての例外クラスの親であるExceptionクラスから継承されたものです。開発者は、RangeExceptionのインスタンスを生成する際に、コンストラクタの第二引数として任意のエラーコードを渡すことができます。これにより、同じ種類の例外であっても、発生した具体的な原因に応じて異なる数値を割り当てることが可能になります。例えば、値が範囲の下限を下回った場合と上限を上回った場合とで、それぞれ別のエラーコードを設定する、といった使い方ができます。例外を捕捉する側のコードでは、getCode()メソッドを用いてこのエラーコードを取得し、その値に基づいて処理を分岐させることができます。エラーコードが明示的に指定されなかった場合、このプロパティのデフォルト値は0となります。この仕組みは、エラーメッセージの文字列内容に依存しない、より安定的で明確なエラーハンドリングを実現するために役立ちます。

構文(syntax)

1<?php
2
3try {
4    // 例外コード 404 を指定して RangeException をスローします
5    throw new RangeException("指定されたインデックスは範囲外です。", 404);
6} catch (RangeException $e) {
7    // 捕捉した例外インスタンスから、コンストラクタで設定された例外コードを取得します
8    $exceptionCode = $e->getCode();
9    echo $exceptionCode; // 404
10}
11
12?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

このプロパティは、例外が発生した際に付随するエラーコードを整数型で返します。

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