(PHP 7)
ReflectionParameter::getType — Gets a parameter's type
Gets the associated type of a parameter.
この関数にはパラメータはありません。
Returns a ReflectionType object if a parameter type is
specified, NULL
otherwise.
例1 ReflectionParameter::getType() Usage as of PHP 7.1.0
As of PHP 7.1.0, ReflectionType::__toString() is deprecated, and ReflectionParameter::getType() may return an instance of ReflectionNamedType. To get the name of the parameter type, ReflectionNamedType() is available in this case.
<?php
function someFunction(int $param, $param2) {}
$reflectionFunc = new ReflectionFunction('someFunction');
$reflectionParams = $reflectionFunc->getParameters();
$reflectionType1 = $reflectionParams[0]->getType();
$reflectionType2 = $reflectionParams[1]->getType();
assert($reflectionType1 instanceof ReflectionNamedType);
echo $reflectionType1->getName(), PHP_EOL;
var_dump($reflectionType2);
?>
上の例の出力は以下となります。
int NULL
例2 ReflectionParameter::getType() Usage before PHP 7.1.0
<?php
function someFunction(int $param, $param2) {}
$reflectionFunc = new ReflectionFunction('someFunction');
$reflectionParams = $reflectionFunc->getParameters();
$reflectionType1 = $reflectionParams[0]->getType();
$reflectionType2 = $reflectionParams[1]->getType();
echo $reflectionType1, PHP_EOL;
var_dump($reflectionType2);
?>
上の例の PHP 7.0 での出力は、このようになります。
int NULL