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

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

作成日: 更新日:

基本的な使い方

『codeプロパティは、例外に関連付けられた整数コードを保持するプロパティです』

このプロパティはLengthExceptionクラスが直接定義するものではなく、その基底クラスであるExceptionクラスから継承されています。そのため、PHPの多くの標準的な例外クラスで共通して利用することが可能です。このプロパティの主な目的は、例外メッセージの文字列だけでは区別しにくいエラーの具体的な原因を、プログラムが識別可能な数値コードとして提供することにあります。LengthExceptionのインスタンスを作成する際、コンストラクタの第2引数に整数を渡すことで、このcodeプロパティに値を設定できます。もし引数を省略した場合は、デフォルト値として0が設定されます。例えば、入力された文字列が短すぎるエラーにはコード10、長すぎるエラーにはコード20を設定するなど、独自のルールを定義できます。catchブロックで例外を捕捉した後、getCode()メソッドを使ってこの値を取得し、その数値に応じて処理を分岐させることで、より詳細で柔軟なエラーハンドリングを実装することが可能になります。

構文(syntax)

1<?php
2
3function validate_length(string $value)
4{
5    if (strlen($value) < 10) {
6        // 第2引数でエラーコードを指定して、例外をスローする
7        throw new LengthException("文字列が短すぎます。", 400);
8    }
9}
10
11try {
12    validate_length("test");
13} catch (LengthException $e) {
14    // getCode()メソッドで、スローされた例外のコードを取得する
15    $errorCode = $e->getCode();
16    echo "エラーコード: " . $errorCode;
17}
18
19?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

LengthException クラスの code プロパティは、例外が発生した際の数値コードを整数型 (int) で返します。

関連コンテンツ

関連プログラミング言語