누군가 설명 할 수 있습니까? 내가 심포니 알고 어떻게합니까 의미 URL을 그 /blogs/blog-title
= /blogs/{title}
어떻게이 routing.yml
에 URL을 구문 분석하고 blog-title
가 URL의 동적 매개 변수임을 알게!symfony의 URL paser는 어떻게 작동합니까?
답변
실제로 몇 단계가 소요됩니다. 약간의 예제 코드를 작성했습니다. 기능 코드이 아닙니다.
$requestArray = explode('/', $_SERVER['REQUEST_URI']);
이제 우리는 한 두 배열의 비교 : 전역 $ _SERVER와 함께 제공되는 REQUEST_URI에 대한
$route = '/blogs/{title}';
$routeArray = explode('/', $route);
같은 일 :에
우선은 조각에 경로를 파괴하는 것입니다 요소 별 요소 :
if(count($routeArray) != count($requestArray)) {
return FALSE; // the route does not match
}
for($i = 0 ; $i < count($routeArray) ; $i++)
{
if($routeArray[$i][0] != '{' && $routeArray[$i] != $requestArray[$i]) {
return FALSE; // the route does not match
}
}
return TRUE; // still here? route matches!
처음 실행되는 for 루프는 'blogs'sta rts와 '{'또는 'blogs'가 'blogs'와 같은 경우.
두 번째 for 루프는 '{title}'이 '{'로 시작하거나 '{title}'이 'blog-title'과 같은지 비교합니다.
이 외에도 Symfony 라우터는 REQUEST_METHOD가 유효한지 확인합니다. 예 : GET, POST, PUT, DELETE.
안녕 Slimen 나는 내 대답은 당신을 도울 것입니다 희망 :
그것은이 작업을 수행하는 라우터 구성 요소입니다. 당신이 응용 프로그램의 웹 페이지에 액세스하려고하면
:
커널은 routing.yml 파일을 구문 분석하는 라우터 구성 요소에 부탁드립니다. 따라서 라우터는 현재 URL을 routing.yml에 정의 된 경로와 일치 시키려고합니다.
라우터가 routing.yml의 경로 정의와 일치하면 라우터는 실행할 라우트의 매개 변수 (실행하려는 컨트롤러 및 실행될 컨트롤러에 제공 할 매개 변수 (newsId 또는 userId 등)).
라우터가 routing.yml에서 경로 정의를 구문 분석하면 수집 된 정보를 커널에 제공합니다.
이제 커널은 실행할 컨트롤러와 해당 컨트롤러에 지정할 매개 변수를 알고 있습니다.
대답은 Thnx이지만 저는 암기에 대해 물었습니다. 라우터가 url을 구문 분석하고 url의 정적 측면과 동적 측면을 정의하는 방법. – SlimenTN
- 1. Symfony의 URL 경로
- 2. URL 단락 사이트는 어떻게 작동합니까?
- 3. URL 재 작성은 어떻게 작동합니까?
- 4. URL 인코딩은 정확히 어떻게 작동합니까?
- 5. 이 URL 인코딩은 어떻게 작동합니까?
- 6. JDBC URL 속성은 어떻게 작동합니까?
- 7. URL 다시 쓰기는 어떻게 작동합니까?
- 8. Backbone.js URL 함수는 어떻게 작동합니까?
- 9. 웹 사이트 URL - 스택 오버플로는 어떻게 작동합니까?
- 10. GWT RPC는 어떻게 작동합니까? (URL 집합)
- 11. URL 매핑 및 양식 - 어떻게 작동합니까?
- 12. 휴대 기기의 해시 태그 URL? 어떻게 작동합니까?
- 13. Symfony의 RedirectResponse
- 14. Symfony의 도우미는 무엇이며 어떻게 만들 수 있습니까?
- 15. Symfony의 CLI에서 컨트롤러 생성을위한 '템플릿'을 어떻게 변경합니까?
- 16. 루비에서는 어떻게 작동합니까? 좋아
- 17. Symfony의 트리
- 18. symfony의 js로보기로 데이터 전달
- 19. linkWithCredential은 어떻게 작동합니까? 규칙은 어떻게 작동합니까?
- 20. python의 인증은 어떻게 작동합니까?
- 21. 어떻게 안드로이드 HttpURLConnection 작동합니까?
- 22. 각도 $ q는 어떻게 작동합니까?
- 23. ajax는 어떻게 파이썬에서 작동합니까?
- 24. 어떻게 작동합니까?
- 25. 어떻게 작동합니까?
- 26. : 어떻게 작동합니까?
- 27. - 어떻게 작동합니까?
- 28. 어떻게 작동합니까?
- 29. 어떻게 작동합니까?
- 30. erlang -import는 어떻게 작동합니까?
Thnx 지금은 분명히 내가 찾고있는 것이 분명합니다. – SlimenTN