PHP系统自带的 ReflectionClass、ReflectionMethod 类,可以反射用户自定义类的中属性,方法的权限和参数等信息,通过这些信息可以准确的控制方法的执行。
PHP手册详情:ReflectionClass 类
主要用的方法:
hasMethod(string) 是否存在某个方法
getMethod(string) 获取方法
PHP手册详情:ReflectionMethod 类
主要方法:
isPublic() 是否为 public 方法
getNumberOfParameters() 获取参数个数
getParamters() 获取参数信息
invoke( object $object [, mixed $parameter [, mixed $… ]] ) 执行方法
invokeArgs(object obj, array args) 带参数执行方法