# Clase ReflectionClass

(PHP 5, PHP 7, PHP 8)

## Introducción

La clase ReflectionClass devuelve información sobre una clase.

## Sinopsis de la Clase

class ReflectionClass implements Reflector {
/* Constantes */
const integer IS_IMPLICIT_ABSTRACT = 16;
const integer IS_EXPLICIT_ABSTRACT = 32;
const integer IS_FINAL = 64;
/* Propiedades */
public $name;
/* Métodos */
public __construct(mixed `$argument`)
public static export(mixed `$argument`, bool `$return` = false): string
public getAttributes(?string `$name` = `null`, int `$flags` = 0): array
public getConstant(string `$name`): mixed
public getConstants(?int `$filter` = `null`): array
public getConstructor(): ReflectionMethod
public getDefaultProperties(): array
public getDocComment(): string
public getEndLine(): int
public getExtension(): ReflectionExtension
public getExtensionName(): string
public getFileName(): string
public getInterfaceNames(): array
public getInterfaces(): array
public getMethod(string `$name`): ReflectionMethod
public getMethods(int `$filter` = ?): array
public getModifiers(): int
public getName(): string
public getNamespaceName(): string
public getParentClass(): object
public getProperties(int `$filter` = ?): array
public getProperty(string `$name`): ReflectionProperty
public getReflectionConstant(string `$name`): ReflectionClassConstant|false
public getReflectionConstants(?int `$filter` = `null`): array
public getShortName(): string
public getStartLine(): int
public getStaticProperties(): array
public getStaticPropertyValue(string `$name`, mixed `&$def_value` = ?): mixed
public getTraitAliases(): array
public getTraitNames(): array
public getTraits(): array
public hasConstant(string `$name`): bool
public hasMethod(string `$name`): bool
public hasProperty(string `$name`): bool
public implementsInterface(string `$interface`): bool
public inNamespace(): bool
public isAbstract(): bool
public isAnonymous(): bool
public isCloneable(): bool
public isEnum(): bool
public isFinal(): bool
public isInstance(object `$object`): bool
public isInstantiable(): bool
public isInterface(): bool
public isInternal(): bool
public isIterable(): bool
public isIterateable(): bool
public isReadOnly(): bool
public isSubclassOf(string `$class`): bool
public isTrait(): bool
public isUserDefined(): bool
public newInstance(mixed `$args`, mixed `$...` = ?): object
public newInstanceArgs(array `$args` = ?): object
public newInstanceWithoutConstructor(): object
public setStaticPropertyValue(string `$name`, string `$value`): void
public __toString(): string
}

## Propiedades

name

  Nombre de la clase. De sólo lectura, lanza una ReflectionException en el intento de escribir.

## Constantes predefinidas

## Modificadores ReflectionClass

`ReflectionClass::IS_IMPLICIT_ABSTRACT`

  Indica que la clase es abstract porque esta tiene algunos métodos abstractos.

`ReflectionClass::IS_EXPLICIT_ABSTRACT`

  Indica que la clase es abstract debido a su definición.

`ReflectionClass::IS_FINAL`

  Indica la clase final.

## Tabla de contenidos

- ReflectionClass::__construct — Construye un objeto de tipo ReflectionClass
- ReflectionClass::export — Exporta una clase
- ReflectionClass::getAttributes — Gets Attributes
- ReflectionClass::getConstant — Obtener una constante definida
- ReflectionClass::getConstants — Obtener constantes
- ReflectionClass::getConstructor — Obtiene el constructor de una clase
- ReflectionClass::getDefaultProperties — Obtener propiedades predeterminadas
- ReflectionClass::getDocComment — Obtener los comentarios de documentación
- ReflectionClass::getEndLine — Consultar línea final
- ReflectionClass::getExtension — Obtiene un objeto ReflectionExtension para la extensión que definió la clase
- ReflectionClass::getExtensionName — Obtiene el nombre de la extensión que definió una clase
- ReflectionClass::getFileName — Obtiene el nombre de fichero en el que está definida la clase
- ReflectionClass::getInterfaceNames — Obtiene nombres de las interfaces
- ReflectionClass::getInterfaces — Obtiene las interfaces
- ReflectionClass::getMethod — Obtiene un objeto ReflectionMethod para un método de una clase
- ReflectionClass::getMethods — Obtiene un array de métodos
- ReflectionClass::getModifiers — Obtiene los modificadores de clase
- ReflectionClass::getName — Obtiene el nombre de la clase
- ReflectionClass::getNamespaceName — Obtiene el nombre del espacio de nombres
- ReflectionClass::getParentClass — Obtiene la clase padre
- ReflectionClass::getProperties — Obtiene las propiedades
- ReflectionClass::getProperty — Obtiene un objeto ReflectionProperty para una propiedad de una clase
- ReflectionClass::getReflectionConstant — Gets a ReflectionClassConstant for a class's constant
- ReflectionClass::getReflectionConstants — Gets class constants
- ReflectionClass::getShortName — Obtiene el nombre abreviado
- ReflectionClass::getStartLine — Obtiene el número de linea de inicio
- ReflectionClass::getStaticProperties — Obtiene las propiedades estáticas
- ReflectionClass::getStaticPropertyValue — Obtiene el valor de una propiedad estática
- ReflectionClass::getTraitAliases — Obtiene un array con los alias usados con los traits
- ReflectionClass::getTraitNames — Devuelve un array con los nombres de los traits usados por esta clase
- ReflectionClass::getTraits — Obtiene un array con los traits que utiliza esta clase
- ReflectionClass::hasConstant — Comprueba si una constante está o no definida
- ReflectionClass::hasMethod — Comprueba si un método está o no definido
- ReflectionClass::hasProperty — Comprueba si una propiedad está o no definida
- ReflectionClass::implementsInterface — Comprueba si se implementa una determinada interfaz
- ReflectionClass::inNamespace — Comprueba si pertenece a un determinado espacio de nombres
- ReflectionClass::isAbstract — Comprueba si la clase es abstracta
- ReflectionClass::isAnonymous — Checks if class is anonymous
- ReflectionClass::isCloneable — Comprueba si la clase es o no clonable
- ReflectionClass::isEnum — Returns whether this is an enum
- ReflectionClass::isFinal — Comprueba si la clase inal
- ReflectionClass::isInstance — Comprueba si un objeto es instancia de la clase
- ReflectionClass::isInstantiable — Comprueba si una clase es instanciable
- ReflectionClass::isInterface — Comprueba una la clase es una interfaz
- ReflectionClass::isInternal — Comprueba si una clase está definida internamente por una extensión o por el núcleo
- ReflectionClass::isIterable — Check whether this class is iterable
- ReflectionClass::isIterateable — Comprueba si es iterable
- ReflectionClass::isReadOnly — Checks if class is readonly
- ReflectionClass::isSubclassOf — Comprueba si es una subclase
- ReflectionClass::isTrait — Comprueba si es un trait
- ReflectionClass::isUserDefined — Comprueba si es una clase definida por el usuario
- ReflectionClass::newInstance — Crea una nueva instancia de clase a partir de la lista de parámetros dados
- ReflectionClass::newInstanceArgs — Crea una nueva instancia de clase a partir de los argumentos dados
- ReflectionClass::newInstanceWithoutConstructor — Crea una nueva clase sin invocar al constructor
- ReflectionClass::setStaticPropertyValue — Establece el valor de una propiedad estática
- ReflectionClass::__toString — Devuelve la representación en forma de string del objeto ReflectionClass