首頁  >  文章  >  後端開發  >  thinkphp常用內建標籤include的詳解

thinkphp常用內建標籤include的詳解

PHP中文网
PHP中文网原創
2017-03-30 16:07:572426瀏覽

變數輸出使用普通標籤就夠了,但是要完成其他的控制、循環和判斷功能,就需要藉助模板引擎標籤庫功能了,系統內置標籤庫的所有標籤無需引入標籤庫即可直接使用。標籤和開放標籤,一個標籤在定義的時候就已經決定了是否是閉合標籤還是開放標籤,不可混合使用,例如:

閉合標籤:

<include file="read" />

開放標籤:

reee

reee內建支援的標籤和屬性

列表如下:

標籤名? file,href,type,value ,basepathFor循環資料輸出switchswitchvalue,breakcomparename,value,type判斷資料是否為空name assignif

include

包含外部模板檔案(閉合)

file

import

volist

循環

數組

foreach

數組或物件遍歷輸出

name,item,key

name,from,to,before

,step

case

分支判斷輸出(必須和switch配套使用)

range

範圍判斷輸出(包括in notin between notbetween別名)

present

判斷是否賦值

name

name

empty

name

name

defined

判斷常數是否未定義

define

常數定義

(閉合)

變數賦值(閉合)

name,value

if

condition

elseif

條件判斷輸出(閉合 合可用於其他標籤)

php

1.include

可以使用Include標籤來包含外部的範本文件,使用方法如下:

include標籤(包含外部模板檔案)

屬性

file(必須):要包含的範本文件,支援變數

示例:

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)!

 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn