在 PHP 中,ReflectionClass
類用于獲取類的元數據。要進行類型判斷,可以使用 ReflectionClass
的 getMethods()
方法來獲取類的方法,然后使用 getReturnType()
方法來獲取方法的返回類型。這里有一個示例:
<?php
class MyClass {
public function myMethod() : string {
return "Hello, World!";
}
}
$reflectionClass = new ReflectionClass(MyClass::class);
$methods = $reflectionClass->getMethods();
foreach ($methods as $method) {
$returnType = $method->getReturnType();
if ($returnType === 'string') {
echo "Method '{$method->getName()}' returns a string.\n";
} elseif ($returnType === 'int') {
echo "Method '{$method->getName()}' returns an integer.\n";
} elseif ($returnType === 'bool') {
echo "Method '{$method->getName()}' returns a boolean.\n";
} else {
echo "Method '{$method->getName()}' returns a different type.\n";
}
}
?>
在這個示例中,我們創建了一個名為 MyClass
的類,其中有一個名為 myMethod
的方法,該方法返回一個字符串。我們使用 ReflectionClass
獲取類的元數據,然后遍歷類的方法并使用 getReturnType()
方法獲取每個方法的返回類型。接下來,我們根據返回類型進行相應的判斷。