International PHP Conference Munich 2025

ReflectionParameter::__construct

(PHP 5, PHP 7, PHP 8)

ReflectionParameter::__constructConstrói

Descrição

public ReflectionParameter::__construct(string|array|object $function, int|string $param)

Constrói uma instância ReflectionParameter.

Parâmetros

function

A função da qual refletir os parâmetros.

param

Ou um int especificando a posição do parâmetro (começando com zero), ou o nome do parâmetro como string.

Exemplos

Exemplo #1 Usando a classe 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(
"-- Parâmetro #%d: %s {\n".
" Classe: %s\n".
" Permite NULL: %s\n".
" Passado por referência: %s\n".
" É opcional?: %s\n".
"}\n",
$i, // $param->getPosition() pode ser usado
$param->getName(),
var_export($param->getClass(), 1),
var_export($param->allowsNull(), 1),
var_export($param->isPassedByReference(), 1),
$param->isOptional() ? 'yes' : 'no'
);
}
?>

O exemplo acima produzirá algo semelhante a:

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 ]
  }
}
-- Parâmetro #0: a {
   Classe: NULL
   Permite NULL: true
   Passado por referência: false
   É opcional?: no
}
-- Parâmetro #1: b {
   Classe: NULL
   Permite NULL: true
   Passado por referência: false
   É opcional?: no
}
-- Parâmetro #2: c {
   Classe: NULL
   Permite NULL: true
   Passado por referência: false
   É opcional?: no
}

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
7
tracid2008 t gmail o com
13 years ago
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');
?>
To Top