LaravelConf Taiwan 2019 announcement

ReflectionClass::getMethod

(PHP 5, PHP 7)

ReflectionClass::getMethodクラスメソッドの ReflectionMethod を取得する

説明

public ReflectionClass::getMethod ( string $name ) : ReflectionMethod

クラスメソッドに関する ReflectionMethod を取得します。

パラメータ

name

調べたいメソッドの名前。

返り値

ReflectionMethod を返します。

エラー / 例外

メソッドが存在しない場合に ReflectionException が発生します。

例1 ReflectionClass::getMethod() の基本的な使用例

<?php
$class 
= new ReflectionClass('ReflectionClass');
$method $class->getMethod('getMethod');
var_dump($method);
?>

上の例の出力は以下となります。

object(ReflectionMethod)#2 (2) {
  ["name"]=>
  string(9) "getMethod"
  ["class"]=>
  string(15) "ReflectionClass"
}

参考

add a note add a note

User Contributed Notes 1 note

up
8
Jarrod Nettles
8 years ago
If you ever need to get the type hint of a parameter in a method use this.

<?php

//Target our class
$reflector = new ReflectionClass('MyClass');

//Get the parameters of a method
$parameters = $reflector->getMethod('FireCannon')->getParameters();

//Loop through each parameter and get the type
foreach($parameters as $param)
{
    
//Before you call getClass() that class must be defined!
    
echo $param->getClass()->name;
}

?>
To Top