클래스/객체 is_a
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
is_a — 개체가 이 개체 유형인지 또는 이 개체 유형이 부모 중 하나인지 확인합니다.
설명
is_a(mixed $object_or_class
, string $class
, bool $allow_string
= false
): bool
주어진 object_or_class
가 이 객체 유형인지 또는 이 클래스를 부모 중 하나로 가지고 있는지 확인합니다.
매개변수
object_or_class
- 클래스 이름 또는 개체 인스턴스입니다.
class
- 클래스 이름
allow_string
- 이 매개변수를
false
로 설정하면object_or_class
와 같은 문자열 클래스 이름이 허용되지 않습니다. 이것은 또한 클래스가 존재하지 않는 경우 자동 로더를 호출하는 것을 방지합니다.
반환 값
객체가 이 클래스에 속하거나 이 클래스를 부모 중 하나로 가지고 있으면 true
를 반환하고 그렇지 않으면 false
를 반환합니다.
Examples
예제 #1 is_a() 예제
<?php
// define a class
class WidgetFactory
{
var $oink = 'moo';
}
// create a new object
$WF = new WidgetFactory();
if (is_a($WF, 'WidgetFactory')) {
echo "yes, \$WF is still a WidgetFactory\n";
}
?>
예제 #2 instanceof 연산자 사용
<?php
if ($WF instanceof WidgetFactory) {
echo 'Yes, $WF is a WidgetFactory';
}
?>
기타
- get_class() - 객체의 클래스 이름을 반환
- get_parent_class() - 개체 또는 클래스의 상위 클래스 이름을 검색합니다.
- is_subclass_of() - 객체에 이 클래스가 부모 중 하나인지 또는 구현하는지 확인합니다.