Php/docs/reflectionparameter.gettype

提供:Dev Guides
< Php
移動先:案内検索

ReflectionParameter::getType

(PHP 7)

ReflectionParameter::getType引数の型を取得する


説明

public ReflectionParameter::getType ( ) : ReflectionType

引数の型を取得します。


パラメータ

この関数にはパラメータはありません。


返り値

引数の型が指定されていれば ReflectionType オブジェクトを返します。 そうでなければ null を返します。


例1 PHP 7.1.0 以降での ReflectionParameter::getType() の使い方

PHP 7.1.0 以降では、 ReflectionType::__toString() が推奨されなくなったので、 ReflectionParameter::getType()ReflectionNamedType を返す 可能性があります。 この場合、引数の方の名前を取得するために、ReflectionNamedType() が利用可能です。


<?phpfunction 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 PHP 7.1.0 より前の ReflectionParameter::getType() の使い方

<?phpfunction 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

参考