변수출력에 일반 태그 사용 충분하지만 그 외의 제어, 루프, 판단 기능을 완성하려면 템플릿 엔진의 태그 라이브러리 기능을 사용해야 합니다. > 내장 태그 라이브러리의 모든 태그는 태그 라이브러리 도입 없이 바로 사용할 수 있습니다.
XML 태그에는 닫힌 태그와 열린 태그가 있습니다. 태그는 정의할 때 결정됩니다. 닫힌 태그인지 열린 태그인지는 혼합할 수 없습니다. 예:
닫힌 태그:
<include file="read" />
열기 태그:
<gt name="name" value="5">value</gt>내장 지원 태그 및
태그 이름 |
함수 |
포함 속성 |
include |
외부 템플릿 파일 포함(닫힘) ) |
파일 |
가져오기 |
리소스 파일 가져오기(클로저에는 js CSS 로드 별칭이 포함됨) |
file,href,type,value, 기본 경로 |
volist |
루프어레이데이터 출력 |
name,id,offset,length,key,mod |
배열 또는 객체 순회출력 |
이름,항목,키 |
|
용 |
For 루프 데이터 출력 |
name,from,to,before,step |
분기 판정 출력 |
이름 |
|
케이스 |
분기 판정 출력(스위치와 결합해야 함) |
value,break |
기본값 |
기본 출력(닫힘은 스위치와 함께 사용해야 함) |
없음 |
비교 |
출력 비교(eq neq lt gt egt elt heq nheq 및 기타 별칭 포함) |
이름, 값, 유형 |
범위 판정 출력 (별칭 사이의 notin 포함) | name,value,type |
|
현재 |
값 할당 여부 결정 |
이름 |
없음 |
값이 아직 할당되지 않았는지 확인 |
이름 |
비어 있음 |
데이터가 비어 있는지 확인 |
이름 |
notempty |
데이터가 비어 있지 않은지 확인 |
이름 |
정의됨 |
상수가 정의되어 있는지 확인 |
이름 |
정의되지 않음 |
상수가 정의되지 않았는지 확인 |
name |
정의 |
상수 정의(닫음) | 이름,값 |
할당 |
변수 할당(클로저) |
이름,값 |
조건부 판단출력 |
조건 |
|
elseif |
조건부 판단 출력 (닫힘은 if 태그와 함께 사용해야 함) |
condition |
else |
조건이 충족되지 않으면 출력(다른 태그에도 클로저 사용 가능) | 없음 |
php |
php 코드 사용 |
없음 |
1.include
Include 태그를 사용하여 외부 템플릿 파일을 포함할 수 있습니다. 사용법은 다음과 같습니다.
|
닫기 | 태그 닫기 | 속성 | 파일(필수) : 포함할 템플릿 파일, 지원 변수 示例: 1、 使用完整文件名包含 格式: <include file="完整模板文件名" /> 例如: <include file="./Tpl/default/Public/header.html" /> 这种情况下,模板文件名必须包含后缀。使用完整文件名包含的时候,特别要注意文件包含指的是服务器端包含,而不是包含一个URL地址,也就是说file参数的写法是服务器端的路径,如果使用相对路径的话,是基于项目的入口文件位置。 2、包含当前模块的其他操作模板文件 格式: <include file="操作名" /> 例如 导入当前模块下面的read操作模版: <include file="read" /> 操作模板无需带后缀。 3、 包含其他模块的操作模板 格式: <include file="模块名:操作名" /> 例如,包含Public模块的header操作模版: <include file="Public:header" /> 4、包含其他模板主题的模块操作模板 格式: <include file="主题名:模块名:操作名" /> 例如,包含blue主题的User模块的read操作模版: <include file="blue:User:read" /> 5、 用变量控制要导入的模版 格式: <include file="$变量名" /> 例如 <include file="$tplName" /> 给$tplName赋不同的值就可以包含不同的模板文件,变量的值的用法和上面的用法相同。 无论你使用什么方式包含外部模板,Include标签支持在包含文件的同时传入参数,例如,下面的例子我们在包含header模板的时候传入了title和keywords变量: <include file="header" title="ThinkPHP框架"keywords="开源WEB开发框架"/> 就可以在包含的header.html文件里面使用var1和var2变量,方法 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>[title]</title> <meta name="keywords" content="[keywords]" /> </head>
注意:由于模板解析的特点,从入口模板开始解析,如果外部模板有所更改,模板引擎并不会重新编译模板,除非在调试模式下或者缓存已经过期。如果部署模式下修改了包含的外部模板文件后,需要把模块的缓存目录清空,否则无法生效。
以上就是thinkphp常用内置标签include的详解的内容,更多相关内容请关注PHP中文网(www.php.cn)!
|