update : 2015.11.03
php.shukuma.com검색:
|
자료형 연산자instanceof는 PHP 변수가 어떤 클래스에서 생성된 객체인지 확인할 때 사용합니다: Example #1 클래스에 instanceof 사용하기
<?php 위 예제의 출력: bool(true) bool(false) instanceof는 변수가 부모 클래스에서 상속받은 클래스인지 확인할 때도 사용할 수 있습니다: Example #2 상속 클래스에 instanceof 사용하기
<?php 위 예제의 출력: bool(true) bool(true) 객체가 클래스의 인스턴스가 아닌지 확인하려면, 논리 not 연산자를 사용할 수 있습니다. Example #3 객체가 클래스의 인스턴스가 아닌지 확인하기 위해 instanceof 사용하기
<?php 위 예제의 출력: bool(true) 마지막으로, instanceof는 변수가 인터페이스를 구현한 클래스의 객체 인스턴스인지 확인하기 위해 사용할 수 있습니다: Example #4 클래스에 instanceof 사용하기
<?php 위 예제의 출력: bool(true) bool(true) 보통 instanceof를 문자 클래스명에 사용하지만, 다른 객체나 문자열 변수와도 사용할 수 있습니다: Example #5 다른 변수와 instanceof 사용하기
<?php 위 예제의 출력: bool(true) bool(true) bool(false) 주의해야할 함정이 있습니다. PHP 5.1.0 이전에, instanceof는 클래스명이 존재하지 않으면 __autoload()를 호출했습니다. 추가로, 클래스가 적재되지 않으면 치명적인 오류가 발생했습니다. 이는 동적 클래스 참조를 사용하거나, 클래스명을 가지는 문자열 변수로 해결할 수 있습니다: Example #6 PHP 5.0 intanceof에서 클래스명 찾기와 치명적인 오류 피하기
<?php 위 예제의 출력: bool(false) instanceof 연산자는 PHP 5에서 추가되었습니다. 이전에는 is_a()가 사용되었지만, is_a()는 instanceof의 기능으로 인해 배제되었습니다. PHP 5.3.0부터 is_a()는 배제되지 않게 되었습니다. 참고: get_class(), is_a(). |