
ReflectionParameter::getAttributes 메소드는 클래스나 메소드의 속성(attribute)을 가져올 때 사용하는 메소드입니다. 속성은 클래스나 메소드에 대한 정보를 저장하는 변수입니다.
속성의 종류는 다음과 같습니다.
- public 속성: 클래스나 메소드의 이름, 타입, 반환 타입 등이 속합니다.
- private 속성: 클래스나 메소드의 내부 변수, 메소드 등이 속합니다.
- protected 속성: 클래스나 메소드의 상속받은 변수, 메소드 등이 속합니다.
예시를 들어보겠습니다.
#hostingforum.kr
php
class User {
public $name;
private $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
}
$reflectionClass = new ReflectionClass('User');
$reflectionMethod = $reflectionClass->getMethod('__construct');
$attributes = $reflectionMethod->getAttributes();
foreach ($attributes as $attribute) {
echo $attribute->getName() . "n";
}
위 코드에서는 User 클래스의 __construct 메소드의 속성을 가져와서 출력합니다. 출력 결과는 다음과 같습니다.
- name
- age
위 코드에서 name과 age는 public 속성입니다. private 속성인 age는 가져올 수 없습니다.
2025-07-08 01:50