2012-01-26 25 views
4

我正在尋找適用於PHP和JS的模板「語言」。我看看Mustache(有一個非常有限的「如果」)和其他一些像jquery-tmpl-php。到目前爲止,但沒有這些似乎滿足我的所有條件:哪些模板語言適用於JS和PHP?

  • 由JSON提供的數據工程(陣列,地圖,文字)
  • 有一個「如果」的聲明至少能夠檢查是否
    • 在地圖中的鍵存在
    • 列表元素是第一/最後/奇數/偶數
    • 一個值等於一個字面
  • 可以遍歷一個列表(在地圖上鍵迭代將是一個獎金)
  • 相同的模板和數據生成正好與PHP和JS
  • 速度不夠快(我知道,這是一個有點模糊)
  • 優選不編譯相同的結果步驟
  • 獎勵:一個很好的方式,以「複數化」的文本,基本上一切,使得國際化更加容易
  • 不Smarty的:)

我明白任何想法,建議或提示

謝謝, Marek

+1

爲什麼使用在所有的「模板」,「語言」? 'var xy = <?php echo $ xy; ?>;' – KingCrunch

+0

我正在尋找一些適用於PHP _and_ JS的東西。 – marekventur

+0

是的,我也是。 PHP _works_與JS和它_is_ PHP;)請記住,一切模板「東西」的確是生成文本,這對於_every_腳本語言 – KingCrunch

回答

2

我只寫了這整個帖子,只重新讀你的問題,看到「不是Smarty」:P。我只是說我環顧了一段JS和PHP模板庫,Smarty對我來說似乎是最好的選擇。你說小鬍子是不夠的。另外一個想到JS和PHP功能的人是Haml

原創:
我還沒有很多的經驗,但我已經開始使用Smarty PHP模板。我創建了一個Smarty模板並將JSON發送到客戶端以獲取Ajax請求。然後,我使用this JS Smarty引擎進行客戶端處理。如果客戶端不支持Javascript,只需將PHP關聯數組發送到Smarty呈現器服務器端,而不是將其發送到JSON解析器,就可以正常降級。仍然使用相同的.smarty文件,到目前爲止工作得很好,我想我會繼續在我的項目的其餘部分使用這種方法。

+0

謝謝,Haml看起來很有趣。之前沒有聽說過它,所以我會研究它。 – marekventur

相關問題