
ReflectionMethod::invokeArgs 메서드는 매개변수의 타입을 확인하지 않습니다. 하지만, 매개변수의 타입을 확인하고 싶다면, ReflectionParameter 클래스를 사용할 수 있습니다.
예를 들어, 다음 코드를 살펴보겠습니다.
#hostingforum.kr
php
use ReflectionClass;
use ReflectionMethod;
use ReflectionParameter;
$reflectionClass = new ReflectionClass('MyClass');
$reflectionMethod = $reflectionClass->getMethod('myMethod');
$parameters = $reflectionMethod->getParameters();
foreach ($parameters as $parameter) {
$parameterType = $parameter->getType();
if ($parameterType !== null) {
echo '매개변수 이름: ' . $parameter->getName() . ', 타입: ' . $parameterType->getName() . "n";
} else {
echo '매개변수 이름: ' . $parameter->getName() . ', 타입: unknown' . "n";
}
}
위의 코드에서, ReflectionParameter 클래스를 사용하여 매개변수의 타입을 확인할 수 있습니다. 매개변수의 타입이 지정되어 있으면 getType() 메서드를 사용하여 타입을 확인할 수 있습니다. 만약 타입이 지정되어 있지 않으면, getType() 메서드는 null을 반환합니다.
또한, ReflectionParameter 클래스의 getName() 메서드를 사용하여 매개변수의 이름을 확인할 수 있습니다.
이러한 방법으로 매개변수의 타입을 확인할 수 있습니다.
2025-07-17 15:22