PHP.MVC的模板標(biāo)簽系統(tǒng)(PhpMVC_Tags)現(xiàn)在提供了3種類型的標(biāo)簽:包含指令,聲明和表達(dá)式.
包含指令能讓我們將內(nèi)容分隔為許多模塊,比如:頁眉,頁腳或者內(nèi)容.包含的頁面可以是HTML,或者其他標(biāo)簽?zāi)0屙?據(jù)個(gè)例子,下面的包含指令能用來包含一個(gè)頁眉:
<@ include 'pageHeader.ssp' @> |
聲明允許我們在模板種聲明一個(gè)頁面級別的變量,或者甚至其他包含頁面.一個(gè)聲明看起來像以下代碼:
<@ salesAreaID = "Central District" @> |
表達(dá)式標(biāo)簽允許我們在模板頁中執(zhí)行表達(dá)式.表達(dá)式的結(jié)果將被包含進(jìn)模板頁.以下表達(dá)式將被用來顯示一個(gè)簡單的字符串(salesAreaID),也可以找回框架配置類的屬性:
<@ =salesAreaID @> <@ =viewConfig.getAreaManager @> |
PHP.MVC beta 0.4.0引進(jìn)了一個(gè)新配置類叫做ViewResourcesConfig.這個(gè)類能被用來定義能被用在VIEW資源(模板)中的全局參數(shù),并且也能去配置模板標(biāo)簽系統(tǒng),它將在下面顯示.phpmvc-config.xml配置文件中的view-resources元素在下面的顯示:
<view-resources appTitle= "Flash Jacks' Sleek Tab Site" copyright = "Copyright @ 2010 Flash Jack. All rights reserved." contactInfo = "[email protected]" processTags = "true" compileAll = "true" className = "MyViewResourcesConfig"> <!-- We can set some properties on our custom ViewResourcesConfig class--> <set-property property="areaManager" value="Joe J. Blogs Esq."/> </view-resources> |
模板頁面處理使用模板標(biāo)簽系統(tǒng)能被<view-resources>結(jié)點(diǎn)來控制.首先我們能定義是模板標(biāo)簽系統(tǒng)編譯所有模板頁面還是只編譯修改過的.其次,我們能定義模板標(biāo)簽系統(tǒng)是否真的要處理標(biāo)簽頁面,處理標(biāo)簽頁面在應(yīng)用程序配置當(dāng)中和配置之后很有用.下面單元顯示的<view-resources>是將compileAll和processTags屬性設(shè)置為真(總是處理標(biāo)簽頁并且處理所有標(biāo)簽頁):
<view-resources ... processTags = "true" compileAll = "true" ... </view-resources> |
Action Dispatcher
PHP.MVC版本beta 0.4.0以上ActionDispatcher類用來負(fù)責(zé)使FormBean,Errors,Value(商務(wù)數(shù)據(jù))和ViewResourcesConfig對象在我們的VIEW(模板)中可以使用.
在檢查模板標(biāo)簽系統(tǒng)之前我們應(yīng)該快速的看一下ActionObjects和ViewResourcesConfig類,當(dāng)在使用標(biāo)準(zhǔn)的ActionDispatcher時(shí).
ActionObjects
ActionDispatcher使一些對象在我們所使用的模板頁面中的應(yīng)用程序VIEW資源可用.3種標(biāo)準(zhǔn)的ActionObjects為:FormBean,Errors,和Value(商務(wù)數(shù)據(jù))對象.
一下表格顯示了在FormAction和Action類中如何使用FormBean,Errors和Value對象:
Saving ActionObjects in ActionForm Classes Saving ActionObjects in Action Classes Retrieving ActionObjects in View Resources (Templates) |
一個(gè)ActionObject將被初始化為NULL如果對象沒有在之前被創(chuàng)建和保存.要想得到ActionObjects的詳細(xì)信息請看這里: http://www.phpmvc.net/docs/guides/guidesIdx.php?doc=action-objects
View Resources
ActionDispatcher也能暴露ViewResourcesConfig對象到我們的模板頁面中.ViewResourcesConfig對象被phpmvc-config.xml配置文件中的<view-resources>元素所配置的.如果ViewResourcesConfig對象還沒有被配置,那么一個(gè)新的實(shí)例將使用默認(rèn)的ViewResourcesConfig類的屬性.
下面這段代碼顯示了使用模板標(biāo)簽系統(tǒng)的表達(dá)式在我們的HTML頁眉模板中如何訪問ViewResourcesConfig屬性:
<!-- Page Header --> <span> <@ =viewConfig.getAppTitle @> </span> |
配置Action Dispatcher
ActionDispatcher是默認(rèn)的PHP.MVC(在beta 0.4.0以上版本)Dispatcher類.這個(gè)Action Dispatcher被包含于框架將默認(rèn)被使用,除非我們定義了一個(gè)類來替代Dispatcher類.在下一節(jié)中我們將看到怎樣配置我們的應(yīng)用程序來使用一個(gè)替代類--TagActionDispatcher類.
|
新聞熱點(diǎn)
疑難解答
圖片精選