2015-04-17 66 views
0

過去兩年來,我一直在使用Meteor.js來處理所有項目,但我接受了一個使用PHP的項目,但它仍然沒有合適的模板引擎,只使用簡單的包括和PHP回聲無處不在。用於PHP的類Meteor.js模板

我真的很喜歡類鬍子的語法,但是,真正將Meteor.js樣式模板設置爲獨立的是能夠像#each,#if/else,每個模板助手一樣運行助手函數,並且您可以定義多個每個文件一個模板。

我想找到一個類似於此的模板引擎,以避免創建自己的模板引擎。

通常情況下,我設置了相同的頁面「做大」一個像這樣的許多小模板:

<template name="post"> 
{{ user.name }} said : 
{{> postTextTemplate }} 
</template> 
<template name="postTextTemplate"> 
{{ postText }} 
<hr> 
At {{ postDate }} - {{ postLikes }} likes. 
</template> 

謝謝。

回答

0

最終創造使用underscore.js模板和自定義的正則表達式規則< @代碼@我自己的元語言>和< @ = @代碼>

0

您可以使用Blade,這看起來正是您想要的,但是如果沒有Laravel,則無法使用Blade。但是,您可以使用幾種standalone libraries

而非#語法你使用的刀片服務器採用@所以你可以做一些很酷的東西,你的意見,如:

@if($shouldLoop) 
    @for($i = 0; $i < 10; $i++) 
     <p>{{ $i }}</p> 
    @endfor 
@else 
    <p>I shouldn't loop</p> 
@endif 

否則,有各種資料庫,如bobthecow's mustashe.php提供的實現mustashe在PHP中。

+0

它不似乎是可能有模板都在同一個文件像Meteor.js允許的,這是一個巨大的生產力和清晰度提升,一些小頁面有5-6個模板,並且每個文件都有一個是瘋狂的。 –