>  기사  >  PHP 프레임워크  >  thinkphp u 메소드를 사용하는 방법

thinkphp u 메소드를 사용하는 방법

藏色散人
藏色散人원래의
2021-12-16 14:58:442308검색

Thinkphp의 u 메소드는 URL 주소 조합을 완료하는 데 사용됩니다. 해당 기능은 현재 URL 모드 및 설정을 기반으로 해당 URL 주소를 자동으로 생성할 수 있다는 것입니다. ,'pseudo-static" ','점프 여부','도메인 이름 표시');".

thinkphp u 메소드를 사용하는 방법

이 기사의 운영 환경: 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.