PHP 프레임워크 - PHP 클래스 배열 멤버 변수를 지능적으로 프롬프트(자동 완성)하는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-03-02 12:10:01
원래의
1276명이 탐색했습니다.

<code>class a{
    static $config = [
        'id' => 1,
        'status' => ['status1'=>1,'status2'=>2]
    ];
  }
</code>
로그인 후 복사
로그인 후 복사

$s = new a();
echo s::config->id;
die;

s::$config-> ID와 상태를 자동으로 완성하는 방법....

답글 내용:

<code>class a{
    static $config = [
        'id' => 1,
        'status' => ['status1'=>1,'status2'=>2]
    ];
  }
</code>
로그인 후 복사
로그인 후 복사

$s = new a();
echo s::config->id;
die;

s::$config-> ID와 상태를 자동으로 완성하는 방법....

물론 그렇게 할 수 있습니다. phpdoc 주석과 ArrayAccess 인터페이스를 구현하고 필요한 프롬프트 속성이 있는 보조 클래스를 사용할 수 있습니다.

실제 원칙은 IDE가 배열이 클래스라고 잘못 생각하도록 만들고 자동으로 속성 이름을 완성하라는 메시지를 표시하는 것입니다. ArrayAccess는 클래스 개체를 배열로 운영하는 "흑인" 마법을 가지고 있습니다.

IDE의 코드 프롬프트는 프로젝트를 로드할 때 인덱스를 생성한 다음 관련 문자를 입력할 때 검색 완료 프롬프트를 시작합니다. 또한 배열을 프롬프트하는 경우 리소스를 너무 많이 소비하며 모두 부분적이고 비활성입니다. - 검색을 중지합니다. 그러나 sublime을 사용하면 최근에 사용한 단어가 표시되므로 요구 사항을 충족할 수 있습니다

phpstorm은 클래스 멤버 변수를 자동으로 프롬프트할 수 있습니다. 배열 유형 멤버 변수를 프롬프트하는 요소는 아직 다루지 않았습니다.

일반 IDE 개발 도구에서는 클래스 멤버 변수와 클래스 멤버 메서드 이름을 묻는 메시지가 표시되지만 아직 말씀하신 메시지를 찾지 못했습니다.

기본적으로 불가능합니다. 간단히 말해서 이러한 배열은 런타임에 생성됩니다. 현재는 문법 구문 분석이 이 정도로 수행되지 않으며 필요하지 않습니다.

예:
코드 배열의 키를 삭제하고 싶은 경우 어떻게 해야 하나요?

이런 종류의 완성 주석과 배열 구조 수준의 완성은 phpdoc을 공부하는 것만큼 실용적이지 않습니다

어레이액세스

phpstorm의 최신 버전에서는 이미 이를 지원합니다. 오늘 제 동료가 프롬프트가 있다고 말했고 제 const 배열 문이 즉시 빨간색으로 보고되었습니다. . . . 그의 phpstorm이 이를 지원합니다. . . . ! !
PHP 프레임워크 - PHP 클래스 배열 멤버 변수를 지능적으로 프롬프트(자동 완성)하는 방법은 무엇입니까?

PHPDoc +1 http://www.07net01.com/progra...를 참고하세요.

일부 IDE에서는 해당 플러그인을 설치할 수도 있습니다. Sublime을 사용하는 것이 좋습니다.

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿