You also can use a class instead of a function name. Just use an array like that
<?php
$reflect = new ReflectionParameter(array('className', 'methodName'), 'property');
?>
(PHP 5, PHP 7, PHP 8)
ReflectionParameter::__construct — Constructeur
Construit une instance ReflectionParameter.
function
La fonction depuis laquelle les paramètres sont reflétés.
param
Soit un entier spécifiant la position du paramètre (commençant par zéro), soit le nom du paramètre en tant que chaîne de caractères.
Exemple #1 Exemple avec ReflectionParameter
<?php
function foo($a, $b, $c) { }
function bar(Exception $a, &$b, $c) { }
function baz(ReflectionFunction $a, $b = 1, $c = null) { }
function abc() { }
$reflect = new ReflectionFunction('foo');
echo $reflect;
foreach ($reflect->getParameters() as $i => $param) {
printf(
"-- Parameter #%d: %s {\n".
" Class: %s\n".
" Allows NULL: %s\n".
" Passed to by reference: %s\n".
" Is optional?: %s\n".
"}\n",
$i, // $param->getPosition() can be used
$param->getName(),
var_export($param->getClass(), 1),
var_export($param->allowsNull(), 1),
var_export($param->isPassedByReference(), 1),
$param->isOptional() ? 'yes' : 'no'
);
}
?>
Résultat de l'exemple ci-dessus est similaire à :
Function [ <user> function foo ] { @@ /Users/philip/cvs/phpdoc/a 2 - 2 - Parameters [3] { Parameter #0 [ <required> $a ] Parameter #1 [ <required> $b ] Parameter #2 [ <required> $c ] } } -- Parameter #0: a { Class: NULL Allows NULL: true Passed to by reference: false Is optional?: no } -- Parameter #1: b { Class: NULL Allows NULL: true Passed to by reference: false Is optional?: no } -- Parameter #2: c { Class: NULL Allows NULL: true Passed to by reference: false Is optional?: no }
You also can use a class instead of a function name. Just use an array like that
<?php
$reflect = new ReflectionParameter(array('className', 'methodName'), 'property');
?>