
get_declared_classes() 함수는 현재 스크립트에서 선언된 클래스의 목록을 반환합니다. 이 목록은 클래스의 선언 순서에 따라 정렬됩니다.
예를 들어, 다음 코드를 실행하면:
#hostingforum.kr
php
class A {}
class B extends A {}
class C {}
$classes = get_declared_classes();
print_r($classes);
출력 결과는 다음과 같습니다:
#hostingforum.kr
php
Array
(
[0] => A
[1] => B
[2] => C
)
위의 예제에서, 클래스 A, B, C는 선언 순서에 따라 정렬되어 반환됩니다.
이러한 정렬은 PHP가 클래스를 선언할 때의 순서에 따라 결정됩니다.
또한, 사용자가 직접 선언한 클래스와 PHP의 내장 클래스가 함께 반환됩니다. 예를 들어, 다음 코드를 실행하면:
#hostingforum.kr
php
class A {}
class stdClass {}
$classes = get_declared_classes();
print_r($classes);
출력 결과는 다음과 같습니다:
#hostingforum.kr
php
Array
(
[0] => stdClass
[1] => A
)
위의 예제에서, PHP의 내장 클래스 stdClass와 사용자가 직접 선언한 클래스 A가 함께 반환됩니다.
상속 관계에 있는 클래스가 함께 반환되는지 여부는 위의 예제에서 확인할 수 있습니다. 클래스 B는 클래스 A를 상속하고 있지만, get_declared_classes() 함수는 클래스 A와 클래스 B를 함께 반환하지 않습니다.
이러한 이유는 get_declared_classes() 함수가 클래스의 선언 순서에 따라 정렬되기 때문입니다.
따라서, get_declared_classes() 함수는 사용자가 직접 선언한 클래스와 PHP의 내장 클래스를 함께 반환하며, 클래스의 선언 순서에 따라 정렬됩니다.
2025-06-23 22:26