2013-02-18 1 views
1

주 앱에 있던 코드를 기반으로하는 패키지 또는 패키지가 아닌 앱에 코드를 작성하는 것을 기반으로하는 예제를 기반으로하는 패키지를 개발 중입니다. . Use View; 또는 Use Controller;을 다양한 파일에 추가하는 것을 잊어 버리고 패키지에서 모든 PHP 스크립트 (필요)를 수동으로 확인하고 추가해야합니다.패키지의 facades를 자동으로 사용 4

패키지를 한 번만 선언하거나 주 앱의 facades로 전달할 수 있도록 자동화하는 방법이 있습니까?

답변

1

나는 두렵다.

이것은 패키지 코드가 자체 네임 스페이스를 가지며 Illuminate 코어도 마찬가지이기 때문입니다. PHP의 use-statements는 파일 단위로만 사용됩니다. 스크립트가 다른 네임 스페이스의 클래스를 사용하는 경우 두 가지 옵션이 있습니다.

  • 현재 네임 스페이스 (전역 네임 스페이스에서 시작) 외관의 전체 네임 스페이스를 참조하는
  • 에 클래스를 별명 (외관에) 사용이 문을 추가, 글로벌 네임 스페이스의 별칭 중 하나되는 Laravel

    <?php 
    
    namespace My\Package; 
    
    class SomeClass 
    { 
        public function doSomething() 
        { 
         // reference full namespace 
         $view = \Illuminate\Support\Facades\View::make('someview'); 
         // or 
         $view = \View::make 
        } 
    } 
    
    ?> 
    
    : 자동 (\보기) 또는 외관을 원래의 네임 스페이스 (\를 분명히 \ 지원 \ 외관 \보기) 전체 네임 스페이스를 참조하는

예를 생성

이것은 use-statements를 사용할 필요가없는 것처럼 보일 수 있지만, 제 의견으로는 더 나쁩니다. 그래서 나는이 use-statements를 추가하는 것에 익숙해지기를 권장한다.

이 사용 문은 클래스 (또는 파일)의 종속성을 명확하게 기술합니다. 항상 노력하고 이들의 양을 줄이는 것이 좋습니다.

관련 문제