ReflectionFunction: : _ _construct
(PHP 5, PHP 7)
ReflectionFunction::__construct — Construit un nouvel objet ReflectionFunction
Description
Construit un nouvel objet ReflectionFunction.
Erreurs / Exceptions
Une exception ReflectionException si le paramètre name
contient une fonction invalide.
Exemples
Exemple #1 Exemple avec ReflectionFunction::__construct()
<?php
/**
* Un simple compteur
*
* @return int
*/
function counter1()
{
static $c = 0;
return ++$c;
}
/**
* Une autre simple compteur
*
* @return int
*/
$counter2 = function()
{
static $d = 0;
return ++$d;
};
function dumpReflectionFunction($func)
{
// Affiche des informations basiques
printf(
"\n\n===> The %s function '%s'\n".
" declared in %s\n".
" lines %d to %d\n",
$func->isInternal() ? 'internal' : 'user-defined',
$func->getName(),
$func->getFileName(),
$func->getStartLine(),
$func->getEndline()
);
// Affiche les commentaires de documentation
printf("---> Documentation:\n %s\n", var_export($func->getDocComment(), 1));
// Affiche les variables statiques existantes
if ($statics = $func->getStaticVariables())
{
printf("---> Static variables: %s\n", var_export($statics, 1));
}
}
// Créer une instance de la classe ReflectionFunction
dumpReflectionFunction(new ReflectionFunction('counter1'));
dumpReflectionFunction(new ReflectionFunction($counter2));
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
===> The user-defined function 'counter1' declared in Z:\reflectcounter.php lines 7 to 11 ---> Documentation: '/** * A simple counter * * @return int */' ---> Static variables: array ( 'c' => 0, ) ===> The user-defined function '{closure}' declared in Z:\reflectcounter.php lines 18 to 23 ---> Documentation: '/** * Another simple counter * * @return int */' ---> Static variables: array ( 'd' => 0, )
Voir aussi
- ReflectionMethod::__construct() - Construit un nouvel objet ReflectionMethod
- Les constructeurs
Version en cache
25/11/2024 07:20:54 Cette version de la page est en cache (à la date du 25/11/2024 07:20:54) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-reflectionconstruct.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.