©
本文档使用 PHP中文网手册 发布
(PHP 5)
ReflectionClass::getMethod — 获取一个类方法的 ReflectionMethod。
$name
)获取一个类方法的 ReflectionMethod。
name
要反射的方法名称。
一个 ReflectionMethod。
如果方法不存在则会抛出 ReflectionException 异常。
Example #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" }
[#1] Christopher Turner [2011-03-23 19:04:48]
If the method doesn't exist within the class that the ReflectionClass is reflecting an Exception is thrown.
[#2] Jarrod Nettles [2010-12-22 12:58:14]
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;
}
?>