Thinkphp의 u 메소드는 URL 주소 조합을 완료하는 데 사용됩니다. 해당 기능은 현재 URL 모드 및 설정을 기반으로 해당 URL 주소를 자동으로 생성할 수 있다는 것입니다. ,'pseudo-static" ','점프 여부','도메인 이름 표시');".
이 기사의 운영 환경: Windows 7 시스템, ThinkPHP 버전 5.0, Dell G3 컴퓨터.
thinkphp의 u 메소드를 어떻게 사용하나요?
U 메소드는 URL 주소 조합을 완료하는 데 사용됩니다. 해당 기능은 현재 URL 모드 및 설정을 기반으로 해당 URL 주소를 자동으로 생성할 수 있다는 것입니다.
U('地址','参数','伪静态','是否跳转','显示域名');
U 메소드를 사용하세요. URL 주소를 하드 코딩하는 대신 템플릿을 사용하면 환경이 변경되거나 매개변수 설정이 변경되면 템플릿의 코드를 변경할 필요가 없다는 장점이 있습니다.
템플릿의 호출 형식은 {:U('地址', '参数'…)}
방식
기본 사용법
U 메소드 사용 예:
U('User/add') // 生成User模块的add操作地址
그룹 호출도 지원할 수 있습니다:
U('Home/User/add') // 生成Home分组的User模块的add操作地址
물론 다음과 같이 작성할 수도 있습니다. 호출을 나타내는 작업 이름 현재 모듈의
U('add') // 生成当前访问模块的add操作地址
그룹, 모듈 및 작업 이름 외에도 일부 매개변수를 전달할 수도 있습니다.
U('Blog/read?id=1') // 生成Blog模块的read操作 并且id为1的URL地址
U 메서드의 두 번째 매개변수는 들어오는 매개변수를 지원하고 두 가지 정의 메서드를 지원합니다. : 배열 및 문자열. 첫 번째 매개변수에는 문자열 매개변수만 정의할 수 있습니다. 다음 방법은 동일합니다.
U('Blog/cate',array('cate_id'=>1,'status'=>1)) U('Blog/cate','cate_id=1&status=1') U('Blog/cate?cate_id=1&status=1')
그러나 다음 정의 방법은 매개변수 전달이 허용되지 않습니다.
U('Blog/cate/cate_id/1/status/1')
프로젝트의 다른 URL 설정에 따라 , 동일한 U 메서드 호출은 예를 들어
U('Blog/read?id=1')
정의에 대해 서로 다른 URL 주소 효과를 지능적으로 생성할 수 있습니다.
현재 URL이 일반 모드로 설정된 경우 마지막으로 생성된 URL 주소는
http://serverName/index.php?m=Blog&a=read&id=1
현재 URL이 PATHINFO 모드로 설정된 경우 동일한 방법을 사용하여 마지막으로 생성된 URL 주소는
http://serverName/index.php/Blog/read/id/1
현재 URL인 경우 REWRITE 모드로 설정되어 있는 경우 동일한 방법으로 최종 생성된 URL 주소는 다음과 같습니다.
http://serverName/Blog/read/id/1
PATHINFO 구분 기호도 설정한 경우:
'URL_PATHINFO_DEPR'=>'_'
는 현재 URL이 REWRITE 모드로 설정된 경우
http://serverName/Blog_read_id_1
를 생성하고 html의 경우 pseudo-static 접미사가 로 설정되면 동일한 방법으로 최종 생성된 URL 주소는 다음과 같습니다.
http://serverName/Blog/read/id/1.html
여러 개의 pseudo-static 지원이 설정된 경우 첫 번째 pseudo-static 접미사가 자동으로 끝에 추가됩니다. 물론 URL 주소를 U 메소드에 수동으로 추가할 수도 있습니다. 예를 들어,
U('Blog/read','id=1','xml')
는
http://serverName/Blog/read/id/1.xml
를 생성합니다. 라우팅 지원
U 메소드는 라우팅도 지원할 수 있습니다. 라우팅 규칙을 다음과 같이 정의합니다:
'news/:id\d'=>'News/read'
그런 다음
U('/news/1')
를 사용하여 최종적으로 URL 주소는 다음과 같습니다.
http://serverName/index.php/news/1
도메인 이름 지원
애플리케이션에 여러 하위 도메인의 작업 주소가 포함된 경우 도메인을 지정할 수도 있습니다. U 메소드에서 주소를 생성해야 하는 이름(예:
U('Blog/read@blog.thinkphp.cn','id=1');
@)은 나중에 도메인 이름을 지정해야 합니다.
또한, U 메소드의 다섯 번째 파라미터를 true로 설정하면 현재 도메인 이름이 자동으로 인식된다는 의미이며, 하위 도메인 이름 배포 설정인 APP_SUB_DOMAIN_DEPLOY 및 APP_SUB_DOMAIN_RULES에 따라 현재 주소의 하위 도메인 이름이 자동 생성됩니다. .
URL_CASE_INSENSITIVE를 켜면 소문자 URL 주소가 균일하게 생성됩니다.
앵커 지원
버전 3.1.2부터 U 메서드는 URL 주소에 앵커 포인트 생성도 지원할 수 있습니다. 예:
U('Blog/read#comment','id=1','html')
는
http://serverName/Blog/read/id/1.html#comment
를 생성합니다. 도메인 이름과 앵커 포인트를 동시에 사용하는 경우 비용을 지불하세요. 앵커 뒤의 도메인 이름을 먼저 확인하세요. 예:
U('Blog/read#comment@blog','id=1');
권장: "최신 10개 thinkphp 비디오 튜토리얼"
위 내용은 thinkphp u 메소드를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!