ReflectionProperty
<<<
ReflectionExtension Extension des classes de réflexion
>>>

5.10.18 Réflexion
5.10 Les classes et les objets (PHP 5)
5 Référence du langage
 Manuel PHP

Introduction
ReflectionFunction
ReflectionParameter
ReflectionClass
ReflectionMethod
ReflectionProperty
->ReflectionExtension
Extension des classes de réflexion

5.10.18.7 ReflectionExtension

La classe ReflectionExtension vous permet de faire du reverse-engineer sur les extensions. Vous pouvez retrouver toutes les extensions chargées à l'exécution en utilisation la fonction get_loaded_extensions .


<?php
class ReflectionExtension implements Reflector
{
    
final private __clone()
    
public __construct(string name)
    
public string __toString()
    
public static string export()
    
public string getName()
    
public string getVersion()
    
public ReflectionFunction[] getFunctions()
    
public array getConstants()
    
public array getINIEntries()
    
public ReflectionClass[] getClasses()
    
public array getClassNames()
}
?>

Pour connaître le fonctionnement d'une extension, vous devez d'abord créer une instance de la classe ReflectionExtension . Vous pourrez ainsi appeler n'importe quelles méthodes de cette instance.

Utilisation de la classe ReflectionExtension

<?php
// Création d'une instance de la classe ReflectionProperty
$ext = new ReflectionExtension('standard');

// Affichage d'informations basiques
printf(
    
"Nom        : %s\n".
    
"Version     : %s\n".
    
"Fonctions   : [%d] %s\n".
    
"Entrées INI : [%d] %s\n" .
    
"Classes     : [%d] %s\n",
        
$ext->getName(),
        
$ext->getVersion() ? $ext->getVersion() : 'NO_VERSION',
        
sizeof($ext->getFunctions()),
        
var_export($ext->getFunctions(), 1),

        
sizeof($ext->getConstants()),
        
var_export($ext->getConstants(), 1),

        
sizeof($ext->getINIEntries()),
        
var_export($ext->getINIEntries(), 1),

        
sizeof($ext->getClassNames()),
        
var_export($ext->getClassNames(), 1)
);
?>

<< ReflectionExtension >>
ReflectionProperty Réflexion Extension des classes de réflexion