Thinkphp 3.1.3模板使用include標籤動態包含模板

Thinkphp3的手冊上說的很清楚:

使用<include file="$tplName" />可以把模板放到變量裏動態加載模板。

但是呢?實測不行,這個標籤不解析變量。

不用等更新了,官方至今都沒有補丁,而且到Thinkphp5這個問題都沒解決。

解決思路:自己修改Thinkphp內核。或者曲線救國。自己修改內核的方法在此不再說明,網上有教程和帖子,目前我遇到的情況曲線救國就可以了。就是通過switch標籤來實現。

<switch name="data.template">
	<case value='text' break='1'><include file="sysedittext"/></case>
	<case value='textarea' break='1'><include file="sysedittextarea"/></case>
	<case value='editor' break='1'><include file="sysediteditor"/></case>
	<case value='image' break='1'><include file="syseditimage"/></case>
	<case value='album' break='1'><include file="syseditalbum"/></case>
	<case value='video' break='1'><include file="syseditvideo"/></case>
	<case value='videoalbum' break='1'><include file="syseditvideoalbum"/></case>
	<case value='music' break='1'><include file="syseditmusic"/></case>
	<case value='musicalbum' break='1'><include file="syseditmusicalbum"/></case>
	<case value='file' break='1'><include file="syseditfile"/></case>
	<case value='files' break='1'><include file="syseditfiles"/></case>
	<case value='datetime' break='1'><include file="syseditdatetime"/></case>

	<default />沒有附加選項
</switch>

不可以使用php原生的include,包含進來之後模板標籤不會被解析。

不過我看,以後開發過程中,改內核可能還是遲早的事。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章