hphp/hack/manual/apis/Classes/ReflectionClass/index.md
:::info[Note] This is a point-in-time snapshot of the API documentation from January 2026. Going forward, we will not be maintaining a public copy of these references, and recommend users to refer to the built-in signature helpers available in the Hack LSP instead for complete and up-to-date information. :::
( excerpt from http://php.net/manual/en/class.reflectionclass.php )
The ReflectionClass class reports information about a class.
class ReflectionClass implements Reflector {...}
::export(mixed $argument, bool $return = false): ?string
( excerpt from http://php.net/manual/en/reflectionclass.export.php )
->__construct(mixed $name_or_obj)
( excerpt from http://php.net/manual/en/reflectionclass.construct.php )
->__toString(): string
( excerpt from http://php.net/manual/en/reflectionclass.tostring.php )
->getAbstractConstantNames(): darray<string>
( excerpt from
http://php.net/manual/en/reflectionclass.getabstractconstantnames.php
)
->getAttributeClass<T as HH\ClassLikeAttribute>(classname<T> $c): ?T
->getAttributesRecursiveNamespaced(): darray<string, varray<mixed>>
->getConstant(string $name): mixed
( excerpt from http://php.net/manual/en/reflectionclass.getconstant.php
)
->getConstants(): darray<string, mixed>
( excerpt from http://php.net/manual/en/reflectionclass.getconstants.php
)
->getConstructor(): ?ReflectionMethod
( excerpt from
http://php.net/manual/en/reflectionclass.getconstructor.php )
->getDefaultProperties(): darray<string, mixed>
( excerpt from
http://php.net/manual/en/reflectionclass.getdefaultproperties.php )
->getDocComment(): mixed
( excerpt from
http://php.net/manual/en/reflectionclass.getdoccomment.php )
->getEndLine(): int
( excerpt from http://php.net/manual/en/reflectionclass.getendline.php )
->getEnumUnderlyingType(): string
Returns the underlying type of this ReflectionClass, given that it
represents an enum
->getExtension(): ?ReflectionExtension
( excerpt from http://php.net/manual/en/reflectionclass.getextension.php
)
->getExtensionName(): string
( excerpt from
http://php.net/manual/en/reflectionclass.getextensionname.php )
->getFile(): ReflectionFile
Gets the declaring file for the reflected class
->getFileName(): mixed
( excerpt from http://php.net/manual/en/reflectionclass.getfilename.php
)
->getInterfaceNames(): varray<string>
( excerpt from
http://php.net/manual/en/reflectionclass.getinterfacenames.php )
->getInterfaces(): darray<string, ReflectionClass>
( excerpt from
http://php.net/manual/en/reflectionclass.getinterfaces.php )
->getMethod(string $name): ReflectionMethod
( excerpt from http://php.net/manual/en/reflectionclass.getmethod.php )
->getMethods(?int $filter = NULL): varray<ReflectionMethod>
( excerpt from http://php.net/manual/en/reflectionclass.getmethods.php )
->getModifiers(): int
( excerpt from http://php.net/manual/en/reflectionclass.getmodifiers.php
)
->getNamespaceName(): string
( excerpt from
http://php.net/manual/en/reflectionclass.functionabstract.php )
->getParentClass(): mixed
( excerpt from
http://php.net/manual/en/reflectionclass.getparentclass.php )
->getProperties(int $filter = 65535): varray<ReflectionProperty>
( excerpt* http://php.net/manual/en/reflectionclass.getproperties.php )
->getProperty(string $name): ReflectionProperty
( excerpt from http://php.net/manual/en/reflectionclass.getproperty.php
)
->getRequirementNames(): varray<string>
Gets the list of implemented interfaces/inherited classes needed to
implement an interface / use a trait
->getRequirements(): darray<string, ReflectionClass>
Gets ReflectionClass-es for the requirements of this class
->getShortName(): string
( excerpt from
http://php.net/manual/en/reflectionclass.getshortname.php )
->getStartLine(): int
( excerpt from http://php.net/manual/en/reflectionclass.getstartline.php
)
->getStaticProperties(): darray<string, mixed>
( excerpt from
http://php.net/manual/en/reflectionclass.getstaticproperties.php )
->getStaticPropertyValue(string $name, mixed ...$def_value = NULL): mixed
( excerpt from
http://php.net/manual/en/reflectionclass.getstaticpropertyvalue.php )
->getTraitNames(): varray<string>
( excerpt from
http://php.net/manual/en/reflectionclass.gettraitnames.php )
->getTraits(): darray<string, ReflectionClass>
( excerpt from http://php.net/manual/en/reflectionclass.gettraits.php )
->hasConstant(string $name): bool
( excerpt from http://php.net/manual/en/reflectionclass.hasconstant.php
)
->hasMethod(string $name): bool
( excerpt from http://php.net/manual/en/reflectionclass.hasmethod.php )
->hasProperty(string $name): bool
( excerpt from http://php.net/manual/en/reflectionclass.hasproperty.php
)
->implementsInterface(string $interface): bool
( excerpt from
http://php.net/manual/en/reflectionclass.implementsinterface.php )
->inNamespace(): bool
( excerpt from http://php.net/manual/en/reflectionclass.innamespace.php
)
->isAbstract(): bool
( excerpt from http://php.net/manual/en/reflectionclass.isabstract.php )
->isCloneable(): bool
( excerpt from
http://php.net/manual/en/reflectionclass.iscloneable.php )
->isEnum(): bool
Returns whether this ReflectionClass represents an enum
->isFinal(): bool
( excerpt from http://php.net/manual/en/reflectionclass.isfinal.php )
->isInstance(mixed $obj): bool
( excerpt from http://php.net/manual/en/reflectionclass.isinstance.php )
->isInstantiable(): bool
( excerpt from
http://php.net/manual/en/reflectionclass.isinstantiable.php )
->isInterface(): bool
( excerpt from http://php.net/manual/en/reflectionclass.isinterface.php
)
->isInternal(): bool
( excerpt from http://php.net/manual/en/reflectionclass.isinternal.php )
->isInternalToModule(): bool
Checks if a class is internal
->isIterateable(): bool
( excerpt from
http://php.net/manual/en/reflectionclass.isiterateable.php )
->isSubclassOf(mixed $class): bool
( excerpt from http://php.net/manual/en/reflectionclass.issubclassof.php
)
->isTrait(): bool
( excerpt from http://php.net/manual/en/reflectionclass.istrait.php )
->newInstance(...$args)
( excerpt from http://php.net/manual/en/reflectionclass.newinstance.php
)
->newInstanceArgs(Traversable<mixed> $args = vec [ ])
( excerpt from
http://php.net/manual/en/reflectionclass.newinstanceargs.php )
->newInstanceWithoutConstructor()
( excerpt from
http://php.net/manual/en/reflectionclass.newinstancewithoutconstructor.php
)
->setStaticPropertyValue(string $name, mixed $value): void
( excerpt from
http://php.net/manual/en/reflectionclass.setstaticpropertyvalue.php )