The ReflectionClassConstant class

(PHP 7 >= 7.1.0, PHP 8)

Introduction

The ReflectionClassConstant class reports information about a class constant.

Class synopsis

class ReflectionClassConstant implements Reflector {
/* Constants */
public const int IS_PUBLIC;
public const int IS_PROTECTED;
public const int IS_PRIVATE;
public const int IS_FINAL;
/* Properties */
public string $name;
public string $class;
/* Methods */
public function __construct(object|string $class, string $constant)
public static function export(mixed $class, string $name, bool $return = ?): string
public function getAttributes(?string $name = null, int $flags = 0): array
public function getDocComment(): string|false
public function getModifiers(): int
public function getName(): string
public function getType(): ?ReflectionType
public function getValue(): mixed
public function hasType(): bool
public function isDeprecated(): bool
public function isEnumCase(): bool
public function isFinal(): bool
public function isPrivate(): bool
public function isProtected(): bool
public function isPublic(): bool
public function __toString(): string
}

Properties

name

Name of the class constant. Read-only, throws ReflectionException in attempt to write.

class

Name of the class where the class constant is defined. Read-only, throws ReflectionException in attempt to write.

Predefined Constants

ReflectionClassConstant Modifiers

ReflectionClassConstant::IS_PUBLIC int

Indicates public constants. Prior to PHP 7.4.0, the value was 256.

ReflectionClassConstant::IS_PROTECTED int

Indicates protected constants. Prior to PHP 7.4.0, the value was 512.

ReflectionClassConstant::IS_PRIVATE int

Indicates private constants. Prior to PHP 7.4.0, the value was 1024.

ReflectionClassConstant::IS_FINAL int

Indicates final constants. Available as of PHP 8.1.0.

Note:

The values of these constants may change between PHP versions. It is recommended to always use the constants and not rely on the values directly.

Changelog

Version Description
8.4.0 The class constants are now typed.
8.0.0 ReflectionClassConstant::export() was removed.

Table of Contents

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top