預設使用 <@ ... @> 作為標籤邊界,可在 phpmvc-config.xml 中透過 tagL、tagR 自訂。
<@ include '...' @>)將外部模板檔案內容插入當前位置,支援巢狀引入:
<html>
<body>
<table>
<tr><td><@ include 'pageHeader.ssp' @></td></tr>
<tr><td><@ include 'sale/pageContent.ssp' @></td></tr>
<tr><td><@ include 'pageFooter.ssp' @></td></tr>
</table>
</body>
</html>
被引入的 pageHeader.ssp 可包含表達式:
<span><@ =viewConfig.getAppTitle @></span>
執行時將輸出實際標題文字(如 "Flash Jacks' Sleek Tab Site")。
<@ 變數 = 值 @>)在模板中定義頁面層級變數,供後續標籤使用:
<@ saleMonth = data.getValueBean('SALE_MONTH') @>
<@ saleTitle = data.getValueBean('SALE_TITLE') @>
<@ dealHeading = data.getValueBean('DEAL_HEADING') @>
<@ salesAreaID = "Central District" @>
前三者從 ActionObject 取得,最後一個為靜態字串。宣告後可在頁面中直接引用:
<h4><@=dealHeading @> <@=saleMonth @></h4>
輸出結果:<h4>Jack's Super Deals for : May 2010</h4>
<@ =表達式 @>)執行並輸出表達式結果:
<@ =salesAreaID @>
<@ =viewConfig.contactInfo @>
前提:變數已宣告或屬性已在 <view-resources> 定義:
<view-resources
appTitle = "Flash Jacks' Sleek Tab Site"
contactInfo = "flash.jack@jackshost.com"
/>
支援兩種風格,編譯器自動轉換:
| 風格 | 範例 | 編譯後 PHP |
|---|---|---|
| PHP 風格 | sales = data->getSales | $data->getSales() |
| 點號風格 | sales = data.getSales | $data->getSales() |
| 帶參數 | staff = data.getValueBean("STAFF") | $data->getValueBean("STAFF") |
| 陣列取值 | products = data->getValueBean("PRODUCTS_ARRAY") | $data->getValueBean("PRODUCTS_ARRAY") |
系統依副檔名判斷是否處理標籤,預設 .ssp(可在 <view-resources> 設定 tagFlagStr=".ssp"、tagFlagCnt="-4")。
下一單元將示範如何綜合運用上述語法構建完整頁面。