
ReflectionProperty::isDynamic은 PHP에서 동적 속성을 확인하는 데 사용되는 메서드입니다. 동적 속성은 런타임에 추가되거나 제거될 수 있는 속성을 말합니다.
이 메서드는 속성이 동적 속성인지 정적 속성인지 확인합니다. 동적 속성은 런타임에 추가되거나 제거될 수 있기 때문에, ReflectionProperty::isDynamic을 사용하여 동적 속성을 확인할 수 있습니다.
예를 들어, 다음 코드는 동적 속성을 추가하고 ReflectionProperty::isDynamic을 사용하여 동적 속성을 확인하는 방법을 보여줍니다.
#hostingforum.kr
php
class Person {
public $name;
}
$person = new Person();
$person->name = 'John';
// 동적 속성을 추가합니다.
$person->age = 30;
// ReflectionProperty::isDynamic을 사용하여 $person->age의 동적 속성 여부를 확인합니다.
$reflection = new ReflectionClass($person);
$property = $reflection->getProperty('age');
echo $property->isDynamic() ? '동적 속성' : '정적 속성'; // 동적 속성
// 동적 속성을 제거합니다.
unset($person->age);
// ReflectionProperty::isDynamic을 사용하여 $person->age의 동적 속성 여부를 확인합니다.
$property = $reflection->getProperty('age');
echo $property->isDynamic() ? '동적 속성' : '정적 속성'; // 정적 속성
이 예제에서, $person->age는 동적 속성이므로, isDynamic() 메서드는 true를 반환합니다. 그런 다음, 동적 속성을 제거하고 다시 ReflectionProperty::isDynamic을 사용하여 동적 속성을 확인하면, 정적 속성이므로, isDynamic() 메서드는 false를 반환합니다.
2025-06-06 16:25