# La classe ReflectionClass

(PHP 5, PHP 7)

## Introduction

La classe ReflectionClass rapporte des informations sur une classe.

## Synopsis de la classe

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

## Propriétés

name

  Nom de la classe. En lecture seule, émets ReflectionException lors d'une tentative d'écriture.

## Constantes pré-définies

## Modificateurs de ReflectionClass

`ReflectionClass::IS_IMPLICIT_ABSTRACT`

  Indique si la classe est abstraite en raison du fait qu'elle contient quelques méthodes abstraites.

`ReflectionClass::IS_EXPLICIT_ABSTRACT`

  Indique si la classe est abstraite en raison de sa définition.

`ReflectionClass::IS_FINAL`

  Indique si la classe est finale.

## Sommaire

- ReflectionClass::__construct — Construit une ReflectionClass
- ReflectionClass::export — Exporte une classe
- ReflectionClass::getConstant — Récupère une constante
- ReflectionClass::getConstants — Récupère les constantes
- ReflectionClass::getConstructor — Récupère le constructeur d'une classe
- ReflectionClass::getDefaultProperties — Récupère les propriétés par défaut
- ReflectionClass::getDocComment — Récupère les commentaires de documentation
- ReflectionClass::getEndLine — Récupère la fin d'une ligne
- ReflectionClass::getExtension — Récupère un objet ReflectionExtension pour l'extension qui définit la classe
- ReflectionClass::getExtensionName — Récupère le nom de l'extension qui définit la classe
- ReflectionClass::getFileName — Récupère le nom du fichier où la classe a été déclaré
- ReflectionClass::getInterfaceNames — Récupère les noms des interfaces
- ReflectionClass::getInterfaces — Récupère les interfaces
- ReflectionClass::getMethod — Récupère un ReflectionMethod pour une méthode de classe
- ReflectionClass::getMethods — Récupère un tableau des méthodes
- ReflectionClass::getModifiers — Récupère les modificateurs de classe
- ReflectionClass::getName — Récupère le nom de la classe
- ReflectionClass::getNamespaceName — Récupère l'espace de noms
- ReflectionClass::getParentClass — Récupère la classe parente
- ReflectionClass::getProperties — Récupère les propriétés
- ReflectionClass::getProperty — Récupère une ReflectionProperty pour une propriété d'une classe
- ReflectionClass::getReflectionConstant — Récupère un ReflectionClassConstant pour une constante d'une classe
- ReflectionClass::getReflectionConstants — Récupère les constantes de classe
- ReflectionClass::getShortName — Récupère le nom court d'une classe
- ReflectionClass::getStartLine — Récupère le numéro de ligne de départ
- ReflectionClass::getStaticProperties — Récupère les propriétés statiques
- ReflectionClass::getStaticPropertyValue — Récupère la valeur d'une propriété statique
- ReflectionClass::getTraitAliases — Retourne un tableau des alias du trait
- ReflectionClass::getTraitNames — Retourne un tableau de noms des traits utilisés par cette classe
- ReflectionClass::getTraits — Retourne un tableau des traits utilisés par cette classe
- ReflectionClass::hasConstant — Vérifie si une constante est définie
- ReflectionClass::hasMethod — Vérifie si une méthode est définie
- ReflectionClass::hasProperty — Vérifie si une propriété est définie
- ReflectionClass::implementsInterface — Vérifie si une classe implémente une interface
- ReflectionClass::inNamespace — Vérifie si une classe est définie dans un espace de noms
- ReflectionClass::isAbstract — Vérifie si une classe est abstraite
- ReflectionClass::isAnonymous — Vérifie si la classe est anonyme
- ReflectionClass::isCloneable — Renseigne à propos de la propriété de duplication de la classe
- ReflectionClass::isFinal — Vérifie si une classe est finale
- ReflectionClass::isInstance — Vérifie si une classe est une instance d'une autre classe
- ReflectionClass::isInstantiable — Vérifie si une classe est instanciable
- ReflectionClass::isInterface — Vérifie si une classe est une interface
- ReflectionClass::isInternal — Vérifie si une classe est définie comme interne par une extension
- ReflectionClass::isIterable — Vérifie si cette classe est itérable
- ReflectionClass::isIterateable — Vérifie si la classe est itérable
- ReflectionClass::isSubclassOf — Vérifie si la classe est une sous-classe
- ReflectionClass::isTrait — Renseigne s'il s'agit d'un trait
- ReflectionClass::isUserDefined — Vérifie si une classe a été définie dans l'espace utilisateur
- ReflectionClass::newInstance — Créer une nouvelle instance de la classe en utilisant les arguments fournis
- ReflectionClass::newInstanceArgs — Créer une nouvelle instance en utilisant les arguments fournis
- ReflectionClass::newInstanceWithoutConstructor — Crée une nouvelle instance de la classe sans invoquer le constructeur
- ReflectionClass::setStaticPropertyValue — Définit la valeur d'une propriété statiques
- ReflectionClass::__toString — Crée une représentation textuelle de l'objet