2012-02-26 46 views
0

什麼更好的辦法是PHP模板? (快,緩存(Gzip已,PHP緩存),優化(服務器))還有什麼更好的辦法來PHP模板

方法一:

<div class="test"><?PHP echo $row['data']; ?></div> 
<div class="test"><?PHP echo $row['data1']; ?></div> 
<div class="test"><?PHP echo $row['data2']; ?></div> 
<div class="test"><?PHP echo $row['data3']; ?></div> 
..... 

Mehod二:使用任何模板系統(Smarty的,raintpl,DWoo,...)。 考慮到內容與設計的分離在大型項目中至關重要,否則哪種方式更好?

在找到本網站爲php模板基準:www.phpcomparison.net(網站已更改,不提供基準測試) 結果:PHP比所有模板系統更快。這是真的 ?

我一直懷疑。

+0

php _is_模板語言 – miki 2012-02-26 09:19:29

+3

這裏流行的態度是,PHP是一種模板語言,如果我們談論其他任何事情,我們都會被低估爲遺忘。 – 2012-02-26 09:21:53

+0

@GGG:不,如果你說出一些令人誤解和愚蠢的話,你會得到低估。有不同的觀點沒有錯。 – 2012-02-26 09:25:55

回答

0

有很多模板系統在那裏,但我只是使用簡單的包括。

<div class="test"><?php include('path/to/template/file.php'); ?></div> 

通過這種方式,您可以將任何類型的內容放入模板文件中。例如,在path/to/template/file.php中,你可以把

<?php echo $row['data']; ?> 
0

除了它的其他功能,PHP本身是一個模板引擎。我認爲PHP是純粹且容易使用的,足以將其用作模板引擎,不需要第三方引擎。

是的純PHP的速度要快得多。

+0

一旦你實現了所有的「花裏胡哨的東西」(使模板引擎比普通PHP更舒適的東西),比如緩存,繼承,值範圍,插件API,HTML處理艾滋病 - 你會發現自己寫了另一個模板引擎。如果你需要超過'<?php echo $ foo?>',你最好使用成熟的模板引擎。 – rodneyrehm 2012-02-26 10:02:20

1

PHP是一種模板語言,您提到的其他模板語言(我將最少添加Twig)是模板系統或框架。它們是有區別的; PHP本身只是爲您提供構建模板系統的工具。它不會告訴你如何處理輸出轉義,國際化等問題。當然,有很多關於如何在網絡上處理這些問題的信息,所以如果你知道哪些問題是你可以解決的。大多數模板系統已經處理了部分或全部這些問題,並且將具有處理它們的文檔功能。這就是PHP運行得更快的原因,因爲它不會被額外的功能「阻塞」。就個人而言,如果您知道自己在做什麼,則可以直接使用PHP創建您的模板。否則,我建議你已經使用了系統。我不是Smarty的巨大粉絲,因爲它以自己的語法重新發明了輪子。從我看到的Twig中可以看出,模板是原生PHP,效果要好得多(並且速度更快)。

+0

Twig發明了另一種語法,所以這裏有什麼更好的?根據http://umumble.com/blogs/php/249/ – rodneyrehm 2012-02-26 09:44:22

+0

Doh,Twig並不比Smarty快!你是對的。我在用Twig與我使用的內部視圖系統混淆。我關於速度的觀點是「有趣的」。我完全承認沒有基準。這些都是非常小的一點。我的主要觀點仍然存在(從您的其他答案看來,您可能會同意!) – liquorvicar 2012-02-26 09:50:17