Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】ReflectionEnum::hasConstant()メソッドの使い方

hasConstantメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

hasConstantメソッドは、PHPのReflectionEnumクラスに属し、指定された名前の定数(ケース)が、ある列挙型(Enum)内に存在するかどうかを検証するメソッドです。

このメソッドは、PHP 8.1以降で利用可能なリフレクションAPIの一部であり、Enumの構造をプログラム実行時に動的に検査します。ReflectionEnumのインスタンスから呼び出すことで、対象Enumが、指定した名前のメンバーを持つか確認します。

引数には、確認したい定数またはケースの名前を文字列で指定します。戻り値は真偽値(bool)であり、存在する場合はtrueを、存在しない場合はfalseを返します。

この機能は、動的なEnumケースの検証や、外部からの入力に基づくEnumメンバーへの安全なアクセスに役立ちます。存在しないEnumメンバーへのアクセスを防ぎ、アプリケーションの堅牢性を高めます。

構文(syntax)

1<?php
2
3enum MyEnum
4{
5    public const MY_CLASS_CONSTANT = 'value';
6}
7
8$reflectionEnum = new ReflectionEnum(MyEnum::class);
9
10$hasConstantTrue = $reflectionEnum->hasConstant('MY_CLASS_CONSTANT');
11$hasConstantFalse = $reflectionEnum->hasConstant('NON_EXISTENT_CONSTANT');
12
13?>

引数(parameters)

string $name

  • string $name: 検索したい定数の名前を指定する文字列

戻り値(return)

bool

指定された名前の定数が列挙型(Enum)内に存在するかどうかを真偽値(trueまたはfalse)で返します。

関連コンテンツ