The PHP Online Conference 2021

La classe ReflectionFunction

(PHP 5, PHP 7)

Introduction

La classe ReflectionFunction rapporte des informations sur une fonction.

Synopsis de la classe

ReflectionFunction extends ReflectionFunctionAbstract implements Reflector {
/* Constantes */
const integer IS_DEPRECATED = 262144 ;
/* Propriétés */
public $name ;
/* Méthodes */
public __construct ( mixed $name )
public static export ( string $name [, string $return ] ) : string
public getClosure ( void ) : Closure
public invoke ([ mixed $... ] ) : mixed
public invokeArgs ( array $args ) : mixed
public isDisabled ( void ) : bool
public __toString ( void ) : string
/* Méthodes héritées */
final private ReflectionFunctionAbstract::__clone ( void ) : void
public ReflectionFunctionAbstract::getFileName ( void ) : string
public ReflectionFunctionAbstract::getName ( void ) : string
abstract public ReflectionFunctionAbstract::__toString ( void ) : void
}

Propriétés

name

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

Constantes pré-définies

Modificateurs de ReflectionFunction

ReflectionFunction::IS_DEPRECATED

Indique une fonction obsolète.

Sommaire

add a note add a note

User Contributed Notes 1 note

up
1
Lorenz R.S.
9 years ago
Here is a concise example of ReflectionFunction usage for Parameter Reflection / introspection (e.g. to automatically generate API descriptions)

<?php
$properties
= $reflector->getProperties();
$refFunc = new ReflectionFunction('preg_replace');
foreach(
$refFunc->getParameters() as $param ){
   
//invokes ■ReflectionParameter::__toString
   
print $param;
}
?>

prints:

Parameter #0 [ <required> $regex ]
Parameter #1 [ <required> $replace ]
Parameter #2 [ <required> $subject ]
Parameter #3 [ <optional> $limit ]
Parameter #4 [ <optional> &$count ]
To Top