模板選擇

模板選擇

"變數的替換模板處理中最常用的就是變數替換,兩種方式除了方法名不同之外(PHPLIBTemplate採用set_var(),而FastTemplate採用assign dler

變數的設置


很明顯,{FOO}或者{BAR}的形式在兩種模板中都是指定的形式;也就是說,兩種模板處理方式中,模板文件本身的外貌應該可以是一致的(比如都是HTML文件中間含有將要被替換的以{}標識的變數)。
模板類的初始化(類的構建器)
都需要在構建模板類的時候指定模板文件存在的目錄位置。
變數的替換
模板處理中最常用的就是變數替換,兩種方式除了方法名不同之外(PHPLIBTemplate採用set_var(),而FastTemplate採用assign()),用法幾乎也是一致的--可以採用(key,value)的方式,也可以直接傳遞一個數組(array(key=>value))。
模板文件的處理
都是採用為每一個模板文件指定一個句柄(handler)的辦法,同時句柄也可以作為變數的值替換另一模板文件中的變數。
解析、輸出過程
都是需要調用parse()方法(這個方法名竟然是相同的)將需要輸出的模板文件解析后賦值給一個句柄,然後調用各自輸出的方法(PHPLIBTemplate中是p(),FastTemplate中是FastPrint())輸出該句柄的內容並結束處理。
重複解析的過程
比如從資料庫中取出幾條記錄需要顯示而模板文件只有可替換的一行變數的時候,就很需要這樣的功能。兩者都具有這樣的功能,只是使用時稍稍有些不同而已(PHPLIBTemplate採用parse(handler,value,true),而FastTemplate採用parse(handler,.value)在值的前面多加一個點),應該說PHPLIBTemplate的方法構造得相對優美一點。
區塊解析的過程(或者可以稱作動態解析)
想像一下你需要從資料庫中取出符合條件的數據並顯示在網頁中--但是因為條件會不盡相同,你並不能明確的知道會有多少條數據--這時候如果你又要採用模板,那麼區塊就是最好的選擇。它是在模板中用特定的符號定義的部分,這一部分可以反覆的被解析並添加到(而不是前一次的解析被后一次覆蓋)輸出網頁中。區塊也許就像下面顯示的一樣(左邊是PHPLIBTemplate採用的區塊設置,而右邊則是FastTemplate採用的):

相關詞條


構建器、文件、變數、數組、資料庫

參考資料


http://www-128.ibm.com/developerworks/cn/linux/sdk/php/template/evaluate/