PHP 프로젝트에서 누락 된 메소드 구현

버디 90

최근에 누군가의 PHP 사이트 프로젝트를 얻었으므로 (이 사람은 나를 돕고 싶지 않습니다) 그의 코드를 이해해야합니다. 그리고 내 대답은 어리 석 겠지만 ...

그러나 수업 전에 몇 가지 메소드가 있는데, 이는 예제와 같이 문서화되어 있습니다.

namespace Base\Classes;

/**
 * @method int method1()
 * @method $this method2(int $parameter)
 */

class SomeClass extends ParentClass
{
    public $_s_a = false;
    public $_user_roles = [];

    public function SomeClassMethod() {
        somethingDone();
    }
}

이 예제에서 볼 수 있듯이 이러한 문서화 된 메서드는 정의 된 클래스에서 구현되지 않습니다. 그러나 내 질문은-이 메서드는 다른 클래스와 템플릿에서 호출됩니다. 그리고 PHPStorm (내 IDE)은이 문서 라인을 호출과 ctrl+B연결하고 참조 사이에서 리드합니다. 그러나이 방법의 정확한 구현을 찾을 수 없습니다. 부모 클래스에서는 찾을 수 없으며이 파일에는 없습니다. 그리고 저는 이것이 제가 익숙하지 않은 문법 설탕이라고 생각했습니다. 내가 맞아? 아니면 내가 놓친 것이 있고 모든 구현이 다른 곳에서 어딘가에 있습니까? (폴더에서 메소드 이름으로 검색하면 아무것도 제공되지 않습니다)

유리 페도로프

PHP에는 몇 가지 마법 방법 이 있으며 그중 하나는 __call().

__call()(자체적으로 또는 부모 클래스 중 하나에 의해) 구현되는 개체가있는 경우 액세스 할 수없는 메서드를 호출 할 수 __call()있으며 대신 메서드가 호출됩니다. 예를 들어 외부에서 private 메서드를 호출하거나 코드에 정의되지 않은 메서드를 호출 할 때 이러한 상황이 발생합니다.

액세스 할 수없는 메서드에 대한 이러한 호출을 사용하면 코드 자체가 런타임에 작동 할 수 있지만 IDE는 메서드가 존재하지 않는다는 경고를 표시 할 가능성이 높습니다. 이러한 경고는 매우 성가 시므로 @method클래스에 태그를 추가 할 수 있으며 IDE는이 메서드가 존재한다는 것을 인식하고 경고를 표시하지 않습니다.

따라서 누군가로부터받은 코드를 지원하려면 __call()메서드 구현을 살펴보십시오 . 이 메서드는 부모 클래스 중 하나에서 구현 될 수 있으므로 확인하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

라이브에서 cakephp 프로젝트를 실행할 때 누락 된 데이터 소스 구성

분류에서Dev

소스 제어에서 누락 된 Android 스튜디오 프로젝트 파일

분류에서Dev

PHP에서 xml 구문 분석을 시도 할 때 누락 된 노드

분류에서Dev

전쟁에서 누락 된 의존성. Gradle 빌드 프로젝트

분류에서Dev

gwtupload 누락 된 구현

분류에서Dev

Sorbet은 누락 된 메소드 구현 (RBI 서명과 비교)을보고하지 않습니다. 여기에서 뭔가 잘못하고 있습니까?

분류에서Dev

TypeAdapterGenerator :- 'getter TypeAdapter.typeId의 구체적인 구현이 누락되었습니다. 누락 된 메소드를 구현해보세요.

분류에서Dev

LibreOffice에서 누락 된 Python 매크로 구성 메뉴

분류에서Dev

LibreOffice에서 누락 된 Python 매크로 구성 메뉴

분류에서Dev

Istio 누락 된 메트릭

분류에서Dev

C ++ 코드 마이그레이션. 메소드 구현은 누락 된 유형을 계속 말합니다.

분류에서Dev

"구문 오류 : ';'누락 미리 컴파일 된 헤더가있는 C ++ 프로젝트에서 '{' "앞에

분류에서Dev

인터페이스 메서드 IControl 구현 누락

분류에서Dev

공유 라이브러리에서 누락 된 기호 구현

분류에서Dev

자동 구성이 누락 된 스프링 부트 가이드

분류에서Dev

다운로드 한 비디오 스트림에서 누락 된 키 프레임 복구

분류에서Dev

케이트에서 누락 된 메뉴

분류에서Dev

케이트에서 누락 된 메뉴

분류에서Dev

Perl의 분할 구문에 누락 된 표현식

분류에서Dev

PHP에서 누락 된 날짜 찾기

분류에서Dev

Visual Studio 2015에서 누락 된 웹 프로젝트

분류에서Dev

머티리얼 UI에 누락 된 구성 요소

분류에서Dev

누락 된 이메일 도구 모음

분류에서Dev

ARCamera 누락 된 구성 요소 통합

분류에서Dev

프로젝트를 gradle 프로젝트로 변환 한 후 CacheConfiguration.getMaxEntriesLocalHeap () 메서드가 누락 된 이유는 무엇입니까?

분류에서Dev

프로젝트를 gradle 프로젝트로 변환 한 후 CacheConfiguration.getMaxEntriesLocalHeap () 메서드가 누락 된 이유는 무엇입니까?

분류에서Dev

Debian 10에서 누락 된 LVM 도구

분류에서Dev

MoqMockingKernel에서 Get 메소드가 누락 된 이유는 무엇입니까?

분류에서Dev

Xcode로 누락 된 프로토콜 방법의 자동 수정 구현?

Related 관련 기사

  1. 1

    라이브에서 cakephp 프로젝트를 실행할 때 누락 된 데이터 소스 구성

  2. 2

    소스 제어에서 누락 된 Android 스튜디오 프로젝트 파일

  3. 3

    PHP에서 xml 구문 분석을 시도 할 때 누락 된 노드

  4. 4

    전쟁에서 누락 된 의존성. Gradle 빌드 프로젝트

  5. 5

    gwtupload 누락 된 구현

  6. 6

    Sorbet은 누락 된 메소드 구현 (RBI 서명과 비교)을보고하지 않습니다. 여기에서 뭔가 잘못하고 있습니까?

  7. 7

    TypeAdapterGenerator :- 'getter TypeAdapter.typeId의 구체적인 구현이 누락되었습니다. 누락 된 메소드를 구현해보세요.

  8. 8

    LibreOffice에서 누락 된 Python 매크로 구성 메뉴

  9. 9

    LibreOffice에서 누락 된 Python 매크로 구성 메뉴

  10. 10

    Istio 누락 된 메트릭

  11. 11

    C ++ 코드 마이그레이션. 메소드 구현은 누락 된 유형을 계속 말합니다.

  12. 12

    "구문 오류 : ';'누락 미리 컴파일 된 헤더가있는 C ++ 프로젝트에서 '{' "앞에

  13. 13

    인터페이스 메서드 IControl 구현 누락

  14. 14

    공유 라이브러리에서 누락 된 기호 구현

  15. 15

    자동 구성이 누락 된 스프링 부트 가이드

  16. 16

    다운로드 한 비디오 스트림에서 누락 된 키 프레임 복구

  17. 17

    케이트에서 누락 된 메뉴

  18. 18

    케이트에서 누락 된 메뉴

  19. 19

    Perl의 분할 구문에 누락 된 표현식

  20. 20

    PHP에서 누락 된 날짜 찾기

  21. 21

    Visual Studio 2015에서 누락 된 웹 프로젝트

  22. 22

    머티리얼 UI에 누락 된 구성 요소

  23. 23

    누락 된 이메일 도구 모음

  24. 24

    ARCamera 누락 된 구성 요소 통합

  25. 25

    프로젝트를 gradle 프로젝트로 변환 한 후 CacheConfiguration.getMaxEntriesLocalHeap () 메서드가 누락 된 이유는 무엇입니까?

  26. 26

    프로젝트를 gradle 프로젝트로 변환 한 후 CacheConfiguration.getMaxEntriesLocalHeap () 메서드가 누락 된 이유는 무엇입니까?

  27. 27

    Debian 10에서 누락 된 LVM 도구

  28. 28

    MoqMockingKernel에서 Get 메소드가 누락 된 이유는 무엇입니까?

  29. 29

    Xcode로 누락 된 프로토콜 방법의 자동 수정 구현?

뜨겁다태그

보관