主題: [請教]LifeType的Smarty標籤語法? 作者: TomexOu 於 二月 05, 2006, 02:42:29 下午 最近在學習smarty,就想以lifetype為學習範本
書上開宗明義說在template裏, 由於預設 {,} 標籤會跟javascript與中文相衝碼(驗證過的確會) 書上叫我們寫 {{, }} 或 <{, }>來代替 {,} 不過,多寫一個很在很煩 很好奇為何lifetype的範本檔,是使用官方{},卻不會發生js/中文衝碼呢? 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: lss 於 二月 05, 2006, 03:08:35 下午 hi tomex_ou:
smarty 有一對 {literal}{/literal} 可以把 javascript 包起來,這樣 smarty 就不會把 javascript 裡的 { } 當成 smarty 標籤處理了。 LT 裡面大部份都是這樣用的。 請參考 http://smarty.php.net/manual/en/language.function.literal.php lss 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: TomexOu 於 二月 06, 2006, 12:02:21 下午 我對於編程的風格選擇,一向不喜歡自訂格式來避免特殊問題
因為官方原創這樣作,一定是有其道理的... 假如官方真的不好,那應該請官方來作修正 而不是底層讓它這樣擺著,只斷上層來東補西補,徒耗效能而己。 例如,在資料庫程式寫作時,很多人喜歡取得db欄位值時再trim()前面空白 這樣的作法就是責任不分! db本來就該負責資料的正確性呀... 因此,對於smarty變數的括號,我仍會使用原官方的, 再利用其他的方式迴避這些問題。 謝謝lss提供這項資訊。 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: markwu 於 二月 06, 2006, 12:51:42 下午 書上叫我們寫 {{, }} 或 <{, }>來代替 {,} 哪一本書呢? 其實 xoops 就是用 <{, }> 來作為 smarty 的標籤,這並不會影響 Smarty 本身的運作啊!只是可能看不習慣。 利用 <{, }> 的好處,就是不需要去擔心 javascript 的 {},也不需去用 {literal}{/literal} 去 avoid 這樣的問題。 其實看你自己方便了! 我個人是偏好{},因為已經『習慣了』 Mark 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: TomexOu 於 二月 06, 2006, 01:14:37 下午 後來細想一下,
jscript對web頁面範本中應用極廣 js裏頭的變數也常常要用到php變數 甚至是要秀出"程式碼"內容 若是一直用literal或rdelim來迴避 好像效果也不佳! 或許xoop的<{}>有它的好處及方便性。 人還是要兼顧現實面的... :-D 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: markwu 於 二月 06, 2006, 01:50:22 下午 或許xoop的<{}>有它的好處及方便性。 人還是要兼顧現實面的... :-D 是啊!所以用 <{.}> 是好的選擇 :-) ,放心去用吧! Mark 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: lss 於 二月 06, 2006, 03:27:27 下午 我還看過教人用 <!--{ }--> 的,說是這樣可以用註解的方式出現在如 Dreamweaver 的網頁編輯器裡,方便用 WYSIWYG 網頁編輯器製作樣版。還看過另一篇文章,使用自訂的 smarty 的 plugin ,讓 Dreamweaver 的樣版(*.dwt)可以直接拿來當 smarty 樣版使用(簡單的還可以,複雜的還是有些限制,試了一陣子就不用了)。
我個人的經驗是,對 smarty 不熟時,使用非大括號的語法,最困難的地方在跟很多的教學文件/範例不同,經常造成困擾。但是用熟了以後,就懶得換了 :-P lss 主題: Re: [請教]LifeType的Smarty標籤語法? 作者: TomexOu 於 二月 06, 2006, 03:40:39 下午 是呀,後來我決定還是使用<{.}>比較方便
它含有<>,又有{}的特性, 是比較能讓人接受的! 一旦決定了,就開始大量用囉... |