
ReflectionClass::newInstance() 메소드는 stdClass object를 생성합니다. MyClass의 생성자 메소드를 호출하여 객체를 생성하려면 newInstanceArgs() 메소드를 사용해야 합니다.
newInstanceArgs() 메소드는 객체를 생성할 때 생성자 메소드에 필요한 인자를 전달할 수 있습니다. 예를 들어, MyClass의 생성자 메소드가 다음과 같이 정의되어 있다고 가정해 보겠습니다.
#hostingforum.kr
php
class MyClass {
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
}
이 경우, newInstanceArgs() 메소드를 사용하여 객체를 생성할 수 있습니다.
#hostingforum.kr
php
$reflectionClass = new ReflectionClass('MyClass');
$object = $reflectionClass->newInstanceArgs(array('John', 30));
또한, newInstance() 메소드의 파라미터는 다음과 같습니다.
* $object: 생성된 객체
* $args: 생성자 메소드에 필요한 인자
newInstanceArgs() 메소드의 파라미터는 다음과 같습니다.
* $args: 생성자 메소드에 필요한 인자
newInstance() 메소드는 stdClass object를 생성하기 때문에, 객체의 속성을 직접 설정할 수 있습니다. 하지만, newInstanceArgs() 메소드는 생성자 메소드를 호출하여 객체를 생성하기 때문에, 객체의 속성을 직접 설정할 수 없습니다.
따라서, newInstanceArgs() 메소드를 사용하여 객체를 생성하는 것이 좋습니다.
2025-08-11 22:31