ReflectionParameter::getType

(PHP 7)

ReflectionParameter::getTypeGets a parameter's type

説明

public ReflectionParameter::getType ( void ) : ReflectionType

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 
$reflectionType1PHP_EOL;
var_dump($reflectionType2);
?>

上の例の PHP 7.0 での出力は、このようになります。

int
NULL

参考