링크를 만들 때 내장 된 symfony 함수를 항상 잊어 버리는 경향이 있습니다.Symfony PHP에서 친숙한 URL을 생성하려면 어떻게해야합니까?
답변
당신의 목표는 응용 프로그램을 통해 사용자 친화적 인 URL이 다음과 같은 방식 사용하는 경우 :
1) 응용 프로그램의 routing.yml 파일에 모듈/액션을위한 라우팅 규칙을 작성합니다. 다음의 예는 (호출기 사용) 1 페이지에 디폴트 응용 프로그램에서 가장 최근의 질문에 보여주는 행동의 라우팅 규칙입니다 :
recent_questions:
url: questions/recent/:page
param: { module: questions, action: recent, page: 1 }
2) 라우팅 규칙이 설정되면을의 url_for()
도우미를 사용 서식 파일에서 보내는 URL 서식을 지정할 수 있습니다.
<a href="<?php echo url_for('questions/recent?page=1') ?>">Recent Questions</a>
이 예에서는 다음 URL이 생성됩니다 : http://myapp/questions/recent/1.html
.
3) 들어오는 URL (요청)은 라우팅 시스템에서 분석되며, 라우팅 규칙 구성에서 일치하는 패턴이 발견되면 이름의 와일드 카드 (예 : :/page
부분)가 요청 매개 변수가됩니다.
link_to()
도우미를 사용하여 HTML <a>
태그를 사용하지 않고 URL을 출력 할 수도 있습니다. 당신이 실제로 해당 URL과 쿼리 문자열을 원하는 경우
이 조언은 심포니 1.0을위한 것입니다. 그것은 아마도 이후 버전에서 작동 할 것입니다. 당신의 sfAction 클래스 내
:
문자열 genUrl ($ 매개 변수 = 배열 (), $ 절대 = false)를
예. $ this-> getController() -> genUrl ('yourmodule/youraction? key = value & key2 = value', true); 템플릿에서
는 :
이것은 정상적인 링크를 생성합니다.
문자열 link_to ($ name, $ internal_uri, $ options = array());
예 : link_to ('내 링크 이름', 'yourmodule/youraction? key = value & key2 = value');
또한,이를 사용
link_to('My link name', 'yourmodule/youraction?key=value&key2=value',array('query_string'=>'page=2'));
그렇지 않으면,이 URL의 한 부분으로 경로를 시도하고 가능성이 조치를 깰거야.
먼저 규칙을 정의하지 않고 URL을 직접 생성 할 수 있습니다.당신이 템플릿에 URL을 생성 할 경우
$this->generateUrl('default', array('module'=>'[ModuleName]','action'=>'[ActionName]'))
, 당신이 사용할 수있는 url_for() 도우미 : 당신이 행동에 URL을 생성 할 경우
, 당신은 generateUrl() 도우미를 사용할 수 있습니다 :
url_for('[ModuleName]/[ActionName]', $absolute)
$ true/false로 설정하고 표시하지 않으려면 echo를 사용하지 마십시오.
그러나 당신이 링크 (<a href=""></a>
같은), LINK_TO을 할 경우() 도우미는 할 것입니다.
- 1. ASP.NET MVC에서 친숙한 URL을 만들려면 어떻게해야합니까?
- 2. .htaccess로 친숙한 URL을 만들려면 어떻게해야합니까?
- 3. PHP에서 전체 URL을 얻으려면 어떻게해야합니까?
- 4. 친숙한 URL을 재현하는 방법은 무엇입니까?
- 5. CS 파일에 친숙한 URL을 만드는 방법
- 6. Wordpress에서 (사용자 정의) 친숙한 URL을 만들려면 어떻게해야합니까? 워드 프레스에서
- 7. Ruby on Rails에서 replace_html 호출의 일부로 외부 URL을 생성하려면 어떻게해야합니까?
- 8. MVC.NET에서 공유 (정적) 메서드 내에서 URL을 생성하려면 어떻게해야합니까?
- 9. 파이썬에서 난수를 생성하려면 어떻게해야합니까?
- 10. 새 컬렉션을 생성하려면 어떻게해야합니까?
- 11. Liferay 포털에서 친숙한 URL을 구현하는 방법
- 12. 친숙한 URL을 수동으로 만드는 방법은 무엇입니까? (PHP)
- 13. ActionLink가 RouteLink에서 친숙한 URL을 생성하는 이유는 무엇입니까?
- 14. 친숙한 URL을 만드는 방법 asp.net 2
- 15. 스트라이프 응용 프로그램에서 친숙한 URL을 사용하도록 변환
- 16. 깨끗한 URL을 생성하려면 MVC FrameW를 사용해야합니까?
- 17. iPhone에서 임의의 숫자를 생성하려면 어떻게해야합니까?
- 18. Java를 사용하여 javadoc을 생성하려면 어떻게해야합니까?
- 19. 모든 Tetrominos의 목록을 생성하려면 어떻게해야합니까?
- 20. 비슷한 스펙 문서를 생성하려면 어떻게해야합니까?
- 21. 공식 문법에서 문장을 생성하려면 어떻게해야합니까?
- 22. Subversion 커밋에서 패치를 생성하려면 어떻게해야합니까?
- 23. Openx에서 통계를 다시 생성하려면 어떻게해야합니까?
- 24. DTD에서 샘플 XML을 생성하려면 어떻게해야합니까?
- 25. mysql에서 바운더리 리턴을 생성하려면 어떻게해야합니까?
- 26. CUDA FORTRAN에서 난수를 생성하려면 어떻게해야합니까?
- 27. PHP에서 긴 URL을 게시하는 방법
- 28. PHP에서 URL을 "방문하는 중"
- 29. PHP에서 URL을 얻는 방법
- 30. PHP에서 URL을 청소하십시오.
응용 프로그램이 그렇게 구성되어 있지 않으면 (기본적으로 그렇지 않은 경우) URL이 .html 부분으로 생성되지 않습니다. –