함수 is_subclass_of
함수 is_subclass_of는 객체나 클래스가 지정된 클래스의 자식 클래스에 속하는지 또는 지정된 인터페이스를 구현하는지 확인합니다. 첫 번째 매개변수로 객체나 클래스 이름을, 두 번째 매개변수로 부모 클래스나 인터페이스 이름을 받습니다. 세 번째 선택적 매개변수는 클래스 자동 로딩을 고려해야 하는지 여부를 결정합니다.
문법
is_subclass_of(mixed $object_or_class, string $class, bool $allow_string = true): bool
예제
간단한 클래스의 상속을 확인해 봅시다:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$res = is_subclass_of('ChildClass', 'ParentClass');
var_dump($res);
?>
코드 실행 결과:
true
예제
인터페이스 구현을 확인해 봅시다:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$res = is_subclass_of('MyClass', 'MyInterface');
var_dump($res);
?>
코드 실행 결과:
true
예제
클래스 이름 대신 객체를 사용한 확인:
<?php
class Animal {}
class Dog extends Animal {}
$dog = new Dog();
$res = is_subclass_of($dog, 'Animal');
var_dump($res);
?>
코드 실행 결과:
true
예제
클래스가 자식 클래스가 아닌 경우 확인:
<?php
class A {}
class B {}
$res = is_subclass_of('B', 'A');
var_dump($res);
?>
코드 실행 결과:
false
함께 보기
-
is_a 함수,
클래스 소속 여부를 확인함 -
class_parents 함수,
모든 부모 클래스를 반환함 -
get_parent_class 함수,
부모 클래스를 반환함 -
instanceof 함수,
인스턴스 확인 연산자