在 PHP 中,ReflectionClass 类用于获取类的元数据信息
<?php
class MyClass {
public function myMethod() {
throw new Exception("An error occurred");
}
}
try {
$reflectionClass = new ReflectionClass("MyClass");
$method = $reflectionClass->getMethod("myMethod");
$method->invoke($reflectionClass->newInstance());
} catch (ReflectionException $e) {
echo "Error: " . $e->getMessage();
} catch (Exception $e) {
echo "Error: " . $e->getMessage();
}
?>
在这个示例中,我们首先尝试使用 ReflectionClass 类获取 MyClass 类的信息。然后,我们尝试获取类中的一个方法(myMethod),并使用反射调用该方法。如果在执行过程中发生异常,我们将捕获并处理它。我们分别捕获了 ReflectionException 和 Exception 异常,以便更好地处理可能出现的不同错误。