# La classe ReflectionMethod

(PHP 5, PHP 7, PHP 8)

## Introduction

La classe ReflectionMethod rapporte des informations sur une méthode.

## Synopsis de la classe

class ReflectionMethod extends ReflectionFunctionAbstract {
/* Constantes */
public const int IS_STATIC;
public const int IS_PUBLIC;
public const int IS_PROTECTED;
public const int IS_PRIVATE;
public const int IS_ABSTRACT;
public const int IS_FINAL;
/* Propriétés */
public string $class;
/* Propriétés héritées */
public string $name;
/* Méthodes */
public function __construct(object|string `$objectOrMethod`, string `$method`)
public function __construct(string `$classMethod`)
public static function createFromMethodName(string `$method`): static
public static function export(string `$class`, string `$name`, bool `$return` = `false`): string
public function getClosure(?object `$object` = `null`): Closure
public function getDeclaringClass(): ReflectionClass
public function getModifiers(): int
public function getPrototype(): ReflectionMethod
public function hasPrototype(): bool
public function invoke(?object `$object`, mixed `...$args`): mixed
public function invokeArgs(?object `$object`, array `$args`): mixed
public function isAbstract(): bool
public function isConstructor(): bool
public function isDestructor(): bool
public function isFinal(): bool
public function isPrivate(): bool
public function isProtected(): bool
public function isPublic(): bool
#[\Deprecated]
public function setAccessible(bool `$accessible`): void
public function __toString(): string
/* Méthodes héritées */
private function ReflectionFunctionAbstract::__clone(): void
public function ReflectionFunctionAbstract::getAttributes(?string `$name` = null, int `$flags` = 0): array
public function ReflectionFunctionAbstract::getClosureCalledClass(): ?ReflectionClass
public function ReflectionFunctionAbstract::getClosureScopeClass(): ?ReflectionClass
public function ReflectionFunctionAbstract::getClosureThis(): ?object
public function ReflectionFunctionAbstract::getClosureUsedVariables(): array
public function ReflectionFunctionAbstract::getDocComment(): string|false
public function ReflectionFunctionAbstract::getEndLine(): int|false
public function ReflectionFunctionAbstract::getExtension(): ?ReflectionExtension
public function ReflectionFunctionAbstract::getExtensionName(): string|false
public function ReflectionFunctionAbstract::getFileName(): string|false
public function ReflectionFunctionAbstract::getName(): string
public function ReflectionFunctionAbstract::getNamespaceName(): string
public function ReflectionFunctionAbstract::getNumberOfParameters(): int
public function ReflectionFunctionAbstract::getNumberOfRequiredParameters(): int
public function ReflectionFunctionAbstract::getParameters(): array
public function ReflectionFunctionAbstract::getReturnType(): ?ReflectionType
public function ReflectionFunctionAbstract::getShortName(): string
public function ReflectionFunctionAbstract::getStartLine(): int|false
public function ReflectionFunctionAbstract::getStaticVariables(): array
public function ReflectionFunctionAbstract::getTentativeReturnType(): ?ReflectionType
public function ReflectionFunctionAbstract::hasReturnType(): bool
public function ReflectionFunctionAbstract::hasTentativeReturnType(): bool
public function ReflectionFunctionAbstract::inNamespace(): bool
public function ReflectionFunctionAbstract::isClosure(): bool
public function ReflectionFunctionAbstract::isDeprecated(): bool
public function ReflectionFunctionAbstract::isGenerator(): bool
public function ReflectionFunctionAbstract::isInternal(): bool
public function ReflectionFunctionAbstract::isStatic(): bool
public function ReflectionFunctionAbstract::isUserDefined(): bool
public function ReflectionFunctionAbstract::isVariadic(): bool
public function ReflectionFunctionAbstract::returnsReference(): bool
abstract public function ReflectionFunctionAbstract::__toString(): void
}

## Propriétés

name

  Nom de la méthode

class

  Nom de la classe

## Constantes pré-définies

## Modificateurs de ReflectionMethod

`ReflectionMethod::IS_STATIC` int

  Indique que la méthode est statique. Antérieur à PHP 7.4.0, la valeur était `1`.

`ReflectionMethod::IS_PUBLIC` int

  Indique que la méthode est publique. Antérieur à PHP 7.4.0, la valeur était `256`.

`ReflectionMethod::IS_PROTECTED` int

  Indique que la méthode est protégée. Antérieur à PHP 7.4.0, la valeur était `512`.

`ReflectionMethod::IS_PRIVATE` int

  Indique que la méthode est privée. Antérieur à PHP 7.4.0, la valeur était `1024`.

`ReflectionMethod::IS_ABSTRACT` int

  Indique que la méthode est abstraite. Antérieur à PHP 7.4.0, la valeur était `2`.

`ReflectionMethod::IS_FINAL` int

  Indique que la méthode est finale. Antérieur à PHP 7.4.0, la valeur était `4`.

> Note:

> La valeur de ces constantes peut changer entre les versions de PHP. Il est recommandé de toujours utiliser les constantes et de ne pas dépendre des valeurs directement.

## Historique

Version | Description
--- | ---
8.4.0 | Les constantes de classe sont désormais typées.
8.0.0 | ReflectionMethod::export() a été supprimée.

## Sommaire

- ReflectionMethod::__construct — Construit un nouvel objet ReflectionMethod
- ReflectionMethod::createFromMethodName — Créer une nouvelle ReflectionMethod
- ReflectionMethod::export — Exportation d'une méthode de reflection
- ReflectionMethod::getClosure — Retourne une fermeture créée dynamiquement pour la méthode
- ReflectionMethod::getDeclaringClass — Récupère la déclaration de la classe de la méthode réfléchie
- ReflectionMethod::getModifiers — Récupère les modificateurs de la méthode
- ReflectionMethod::getPrototype — Récupère le prototype de la méthode (s'il existe)
- ReflectionMethod::hasPrototype — Retourne si la méthode a un prototype
- ReflectionMethod::invoke — Invoque
- ReflectionMethod::invokeArgs — Invoque les arguments
- ReflectionMethod::isAbstract — Vérifie si la méthode est abstraite
- ReflectionMethod::isConstructor — Vérifie si la méthode est un constructeur
- ReflectionMethod::isDestructor — Vérifie si la méthode est un destructeur
- ReflectionMethod::isFinal — Vérifie si la méthode est finale
- ReflectionMethod::isPrivate — Vérifie si la méthode est privée
- ReflectionMethod::isProtected — Vérifie si la méthode est protégée
- ReflectionMethod::isPublic — Vérifie si la méthode est publique
- ReflectionMethod::setAccessible — Définit l'accessibilité de la méthode
- ReflectionMethod::__toString — Retourne une représentation textuelle de la méthode

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open