PHP: Hypertext Preprocessor (original) (raw)
(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_PROTECTED;
public const int IS_PRIVATE;
/* Properties */
/* Methods */
public __construct(object|string $class
, string $constant
)
public static export(mixed $class
, string $name
, bool $return
= ?): string
public getAttributes(?string $name
= [null](reserved.constants.php#constant.null)
, int $flags
= 0): array
public getDeclaringClass(): ReflectionClass
public getDocComment(): string|false
public getModifiers(): int
public getType(): ?ReflectionType
public isDeprecated(): bool
public isEnumCase(): bool
public isProtected(): bool
public __toString(): string
}
Properties
name
Name of the class constant. Read-only, throwsReflectionException in attempt to write.
class
Name of the class where the class constant is defined. Read-only, throwsReflectionException in attempt to write.
Predefined Constants
ReflectionClassConstant Modifiers
[ReflectionClassConstant::IS_PUBLIC](class.reflectionclassconstant.php#reflectionclassconstant.constants.is-public)
int
Indicates public constants. Prior to PHP 7.4.0, the value was 256
.
[ReflectionClassConstant::IS_PROTECTED](class.reflectionclassconstant.php#reflectionclassconstant.constants.is-protected)
int
Indicates protected constants. Prior to PHP 7.4.0, the value was 512
.
[ReflectionClassConstant::IS_PRIVATE](class.reflectionclassconstant.php#reflectionclassconstant.constants.is-private)
int
Indicates private constants. Prior to PHP 7.4.0, the value was 1024
.
[ReflectionClassConstant::IS_FINAL](class.reflectionclassconstant.php#reflectionclassconstant.constants.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. |