(PHP 5, PHP 7)
ReflectionParameter::__construct — Конструктор
$function
, string $parameter
)Создает класс ReflectionParameter.
К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.
function
Функция, параметр которой требуется отразить.
parameter
Аргумент.
Эта функция не возвращает значения после выполнения.
Пример #1 Использования класса 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(
"-- Аргумент #%d: %s {\n".
" Класс: %s\n".
" Допускает значения NULL: %s\n".
" Передается по ссылке: %s\n".
" Необязательный?: %s\n".
"}\n",
$i, // $param->getPosition() can be used from PHP 5.2.3
$param->getName(),
var_export($param->getClass(), 1),
var_export($param->allowsNull(), 1),
var_export($param->isPassedByReference(), 1),
$param->isOptional() ? 'да' : 'нет'
);
}
?>
Результатом выполнения данного примера будет что-то подобное:
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 ] } } -- Аргумент #0: a { Класс: NULL Допускает значения NULL: true Передается по ссылке: false Необязательный?: нет } -- Аргумент #1: b { Класс: NULL Допускает значения NULL: true Передается по ссылке: false Необязательный?: нет } -- Аргумент #2: c { Класс: NULL Допускает значения NULL: true Передается по ссылке: false Необязательный?: нет }