class Reflection

PHP reflection helpers.

Traits

Static class.

Constants

BUILTIN_TYPES

Methods

static bool
isBuiltinType(string $type)

Determines if type is PHP built-in type. Otherwise, it is the class name.

static string|null
getReturnType(ReflectionFunctionAbstract $func)

Returns the type of return value of given function or method and normalizes self, static, and parent to actual class names.

static string|null
getParameterType(ReflectionParameter $param)

Returns the type of given parameter and normalizes self and parent to the actual class names.

static string|null
getPropertyType(ReflectionProperty $prop)

Returns the type of given property and normalizes self and parent to the actual class names.

static mixed
getParameterDefaultValue(ReflectionParameter $param)

Returns the default value of parameter. If it is a constant, it returns its value.

static ReflectionClass
getPropertyDeclaringClass(ReflectionProperty $prop)

Returns a reflection of a class or trait that contains a declaration of given property. Property can also be declared in the trait.

getMethodDeclaringMethod(ReflectionMethod $method)

Returns a reflection of a method that contains a declaration of $method.

static bool
areCommentsAvailable()

Finds out if reflection has access to PHPdoc comments. Comments may not be available due to the opcode cache.

static string
toString(Reflector $ref)

No description

static string
expandClassName(string $name, ReflectionClass $context)

Expands the name of the class to full name in the given context of given class.

static array
getUseStatements(ReflectionClass $class)

No description

Details

at line 31
static bool isBuiltinType(string $type)

Determines if type is PHP built-in type. Otherwise, it is the class name.

Parameters

string $type

Return Value

bool

at line 41
static string|null getReturnType(ReflectionFunctionAbstract $func)

Returns the type of return value of given function or method and normalizes self, static, and parent to actual class names.

If the function does not have a return type, it returns null.

Parameters

ReflectionFunctionAbstract $func

Return Value

string|null

at line 54
static string|null getParameterType(ReflectionParameter $param)

Returns the type of given parameter and normalizes self and parent to the actual class names.

If the parameter does not have a type, it returns null.

Parameters

ReflectionParameter $param

Return Value

string|null

at line 67
static string|null getPropertyType(ReflectionProperty $prop)

Returns the type of given property and normalizes self and parent to the actual class names.

If the property does not have a type, it returns null.

Parameters

ReflectionProperty $prop

Return Value

string|null

at line 97
static mixed getParameterDefaultValue(ReflectionParameter $param)

Returns the default value of parameter. If it is a constant, it returns its value.

Parameters

ReflectionParameter $param

Return Value

mixed

Exceptions

ReflectionException If the parameter does not have a default value or the constant cannot be resolved

at line 128
static ReflectionClass getPropertyDeclaringClass(ReflectionProperty $prop)

Returns a reflection of a class or trait that contains a declaration of given property. Property can also be declared in the trait.

Parameters

ReflectionProperty $prop

Return Value

ReflectionClass

at line 146
static ReflectionMethod getMethodDeclaringMethod(ReflectionMethod $method)

Returns a reflection of a method that contains a declaration of $method.

Usually, each method is its own declaration, but the body of the method can also be in the trait and under a different name.

Parameters

ReflectionMethod $method

Return Value

ReflectionMethod

at line 180
static bool areCommentsAvailable()

Finds out if reflection has access to PHPdoc comments. Comments may not be available due to the opcode cache.

Return Value

bool

at line 189
static string toString(Reflector $ref)

Parameters

Reflector $ref

Return Value

string

at line 212
static string expandClassName(string $name, ReflectionClass $context)

Expands the name of the class to full name in the given context of given class.

Thus, it returns how the PHP parser would understand $name if it were written in the body of the class $context.

Parameters

string $name
ReflectionClass $context

Return Value

string

Exceptions

InvalidArgumentException

at line 244
static array getUseStatements(ReflectionClass $class)

Parameters

ReflectionClass $class

Return Value

array of [alias => class]