比如一个PHP的扩展,你知道类名,但是不知道具体有哪些方法可以使用,可以使用反射试试。

示例:

$reflection = new ReflectionClass ($class_name);
$methods = $reflection->getMethods(ReflectionMethod::IS_PUBLIC + ReflectionMethod::IS_PROTECTED + ReflectionMethod::IS_PRIVATE);
//遍历所有的方法
echo "<pre>";
foreach ($methods as $method) {
		//获取方法的参数
		$params = $method->getParameters();
		$position=0;    //记录参数的次序
		foreach ($params as $param){
				$arguments[$param->getName()] = $position;
				//参数是否设置了默认参数,如果设置了,则获取其默认值
				$defaults[$position] = $param->isDefaultValueAvailable() ? $param->getDefaultValue() : NULL;
				$position++;
		}

		$data = array(
				'method_name'=>$method->getName(),
				'arguments'=>$arguments,
				'defaults'=>$defaults,
		);
		var_dump($data);
}