>  기사  >  백엔드 개발  >  PHP의 객체지향 매직 메소드란 무엇입니까?

PHP의 객체지향 매직 메소드란 무엇입니까?

青灯夜游
青灯夜游원래의
2020-07-28 16:39:332435검색

PHP의 객체 지향 매직 메소드에는 __construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep() 등이 포함됩니다.

PHP의 객체지향 매직 메소드란 무엇입니까?

매직 메소드란 무엇인가요?

매직 메소드란 __(밑줄 2개)로 시작하여 특정 시점에 시스템이 자동으로 호출하는 메소드를 말합니다.

PHP에는 현재 15개의 매직 메소드가 있습니다:

1. 객체를 생성할 때 호출되고 초기화에 자주 사용되는 __construct()

2 객체가 명시적으로 파괴되거나 삭제될 때 호출되는 __destruct(). 스크립트가 종료되거나 디스플레이가 파괴됩니다.

3.__call(), 직접 액세스할 수 없는 객체에서 비정적 메서드를 호출하면 __call()이 자동으로 호출됩니다.

4. __callStatic(), 정적 모드에서 접근할 수 없는 메서드를 호출할 때 호출됨

5. __get(), 직접 접근할 수 없는 속성이 클래스 외부에서 호출되면 함수 메서드가 자동으로 호출되어 값을 반환해야 함 따라서 최종 끝은 return 문이어야 합니다

6. __set(). 직접 액세스할 수 없는 클래스의 속성을 설정할 때 __isset()은 값을 반환하지 않고 자동으로 호출됩니다. class 의 속성이 설정되었는지 여부에 관계없이 액세스할 수 없는 속성에 대해 isset() 또는 empty()가 호출되면 __isset()가 호출됩니다. 부울 값

8, __unset()을 반환합니다. 액세스할 수 없거나 존재하지 않는 속성

9, __sleep()을 설정 해제할 때 호출되며, serialize()를 실행할 때 이 함수가 먼저 호출됩니다. 커밋되지 않은 데이터

10, __wakeup()을 제출하려면 데이터베이스 연결 재설정이나 다른 초기화 작업 수행과 같은 역직렬화 작업에 자주 사용됩니다

11, __toString(), 클래스의 객체를 문자열 형식으로 출력할 때 , 기본적으로 자동으로 비활성화됩니다. 호출 시 return 문이 있어야 하며 반환되는 값은 문자열이어야 합니다.

12. __invoke() 함수를 호출하여 객체를 호출하려고 하면 __invoke() 메서드가 호출됩니다. 자동으로 호출됩니다.

13. __set_state(), PHP 5.1.0부터 이 정적 메서드는 클래스를 내보내기 위해 var_export()가 호출될 때 호출됩니다.

14.__clone(), 객체 복사가 완료되면

15.__debugInfo()를 호출하여 필요한 디버깅 정보를 인쇄합니다.

추천 관련 튜토리얼: "

PHP Tutorial

"

위 내용은 PHP의 객체지향 매직 메소드란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.