Route 클래스를 확인합니다. group
또는 get
등의 정적 메서드는 없습니다. 그래서 이해하는 법.
물론 내 앱을 시작하는 데 필요한 것을 알 필요가 없습니다. 그러나 구문을 이해하는 것은 언제나 좋습니다. 나는 phpstorm을 사용하고 있습니다. 일반적으로 함수와 클래스의 링크를 알아낼 수 있습니다. group
또는 get
을 찾으려고 시도했지만 신고하지 않았습니다.
Route 클래스를 확인합니다. group
또는 get
등의 정적 메서드는 없습니다. 그래서 이해하는 법.
물론 내 앱을 시작하는 데 필요한 것을 알 필요가 없습니다. 그러나 구문을 이해하는 것은 언제나 좋습니다. 나는 phpstorm을 사용하고 있습니다. 일반적으로 함수와 클래스의 링크를 알아낼 수 있습니다. group
또는 get
을 찾으려고 시도했지만 신고하지 않았습니다.
Route::method()
과 같은 것을 사용하면 "외관"이라고 불리는 것을 사용하고 있습니다. Route
클래스가이 컨텍스트의 외관입니다.
Illuminate\Support\Facades\Route
을 살펴보면 이라는 정적 메서드 하나가 제공되며이 개체는 router
문자열을 반환합니다. IoC 컨테이너에서 Illuminate\Routing\Router
클래스의 인스턴스를 참조하는 것은이 문자열입니다.
설정하는 동안 Laravel은이 클래스의 인스턴스를 만들고 router
키와 같은 종류로 저장합니다.
Route::get(...)
할 때 Laravel은 facade 접근자를 사용하여 이미 생성 된 Router 클래스의 인스턴스를 찾고 get
메서드를 호출합니다. 동적 프로그래밍을 사용하여이 작업을 수행합니다. 자세한 내용은 Illuminate\Support\Facades\Facade
클래스를 참조하십시오. 특히 __callStatic
메소드가 시작됩니다. Route::get()
를 호출 그래서
: 당신은 실제로 Illuminate\Support\Facades\Route::get
Facade
클래스는 확장, 그래서 __callStatic
방법은 실행을 호출하고
Facade
클래스는
__callStatic
방법은
$instance
라우터의 인스턴스입니다
$instance->$method(...$args);
를 호출, 당신은 논리를 따르는 경우
static::getFacadeRoot()
, 당신에게 마지막으로
Illuminate\Routing\Router
$method
는 get
및 $args
무엇을이다 you passed to Route::get(...);
Route::get('route', '[email protected]');
으로 전화하면 실제로는 Illuminate\Routing\Router
의 인스턴스에서 get('route', '[email protected]')
을 호출하게됩니다. 공지, 당신은 실제로 정적 메서드를 호출하지 않습니다.당신은 일반적으로 외관의 몇 가지 쉬운 설명을 줄 수 있습니까. –
@SanthoshYedidi Laravel 문서를 사용해 보시지 않겠습니까? https://laravel.com/docs/master/facades – linuxartisan
ok. 나는 그것을 공부할 것이다. –
이것은 소스를주의 깊게 보지 않고 사용자를 처음으로 laravel하는 것은 좋은 질문이 아니지만 프레임 워크 전체에서 사용되는 개념이며 구문을보다 구문 적으로 표현하는 데 도움이됩니다. facades로] :) – tam5