라이브러리

[PHP] is_a - 객체가 주어진 유형인지 하위 유형인지 확인합니다.




PHP의 is_a() 함수

PHP의 `is_a()` 함수는 객체가 특정 클래스 또는 인터페이스를 상속받았는지 확인하는 데 사용됩니다. 이 함수는 객체의 타입을 확인하고, 그 타입이 주어진 클래스 또는 인터페이스와 일치하는지 확인합니다.

is_a() 함수의 사용법

`is_a()` 함수의 사용법은 다음과 같습니다.

#hostingforum.kr
php

is_a($object, $class_name, $allow_string = false)



- `$object`: 확인하려는 객체
- `$class_name`: 확인하려는 클래스 또는 인터페이스 이름
- `$allow_string`: `true`로 설정하면 `$class_name`이 문자열로 주어질 수 있습니다. 기본값은 `false`입니다.

예제

#hostingforum.kr
php

// Animal 클래스 정의

class Animal {

    public function sound() {

        echo "동물은 소리내지 않습니다.
";

    }

}



// Dog 클래스 정의 (Animal 클래스를 상속)

class Dog extends Animal {

    public function sound() {

        echo "개는 짖습니다.
";

    }

}



// Cat 클래스 정의 (Animal 클래스를 상속)

class Cat extends Animal {

    public function sound() {

        echo "고양이는 울립니다.
";

    }

}



// 객체 생성

$dog = new Dog();

$cat = new Cat();



// is_a() 함수 사용

echo var_export(is_a($dog, 'Animal'), true) . "
"; // true

echo var_export(is_a($dog, 'Dog'), true) . "
"; // true

echo var_export(is_a($dog, 'Cat'), true) . "
"; // false



echo var_export(is_a($cat, 'Animal'), true) . "
"; // true

echo var_export(is_a($cat, 'Dog'), true) . "
"; // false

echo var_export(is_a($cat, 'Cat'), true) . "
"; // true



위 예제에서, `Dog` 클래스는 `Animal` 클래스를 상속하고, `Cat` 클래스도 `Animal` 클래스를 상속합니다. `is_a()` 함수를 사용하여 `$dog` 객체와 `$cat` 객체가 `Animal` 클래스를 상속하는지 확인합니다. 결과는 다음과 같습니다.

#hostingforum.kr


true

true

false



true

false

true



이 예제는 `is_a()` 함수의 사용법과, 객체가 특정 클래스 또는 인터페이스를 상속하는지 확인하는 방법을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 438 페이지

검색

게시물 검색