2012-03-16 108 views
1

我是PHP新手,來自ASP.net背景,我遇到的最麻煩的是從PHP生成html。我的問題是如何在工業中完成?我看到4種方式:PHP生成html

  1. 從PHP程序內部生成。
  2. 使用PHP「助手類」來做到這一點。
  3. 從HTML內部混合PHP。
  4. 使用模板。

有沒有更多的方法,哪一個用於專業項目。如果它的數字是2或4,你能建議「最好」(最常用的)輔助類或模板。

+1

這取決於。它總是取決於。在ASP.NET中,你有大致相同的選項 - 代碼隱藏和模板,MVC,混合代碼與'<% %>'標籤... – Ryan 2012-03-16 00:22:47

回答

2

使用像CodeIgniter這樣的MVC框架,並遵循那裏的標準。儘量保持業務和顯示邏輯儘可能分開!

這背後的原因是,如果您稍後決定修改代碼,則更容易找到有問題的代碼。搜索幾個模板文件比查找所有邏輯來查找一個html代碼片段更簡單。

+0

@minitech微編輯並非真的是一個字符所必需的,因爲「CodeIgniter」是這兩個詞的portmanteau,額外的空間並沒有減損含義... – Cyclone 2012-03-16 00:27:27

+0

糾正這個句子中的錯誤並不會減損它的含義,但它仍然和人們稱之爲jQuery Jquery一樣煩人。 – Ryan 2012-03-16 00:30:43

+0

我並不特別在這裏或那裏出現一個小錯誤,它無論如何都是語義。但是,鏈接語法的變化困擾我。你不喜歡HTML嗎? :( – Cyclone 2012-03-16 00:33:35

0

現在大多數專業開發都是使用MVC框架完成的,例如CakePHP或CodeIgniter。

你也可以看看像Smarty這樣的獨立模板系統。

0

當你用php開始時,你會發現幾種生成你的網頁的方法。

Html是一種模板語言,所以它只是格式化的字符串,而且PHP是非常好的生成字符串,所以你有很多方法來做到這一點。

但是有些方法比其他方法更好。例如:如果您將您的html代碼與您的php代碼混合在一起,您會非常難以閱讀,維護和縮放代碼,因此如果將代碼分層分開,則會更好。 MVC是一種處理非常好的這種層抽象的設計模式,因此請稍微閱讀一下。

在PHP裏面,你可以找到幾種工具來以良好的方式來完成它,比如爲你的項目使用框架。這些框架使您的開發變得輕鬆快捷,並可以很好地管理mvc抽象。 我推薦Laravel,它很容易使用,功能非常強大,您可以快速完成工作。

但是,如果您不想使用框架,您仍然可以將您的邏輯從html代碼中分離出來,並且只在需要時填寫html。看看The following class,也許它可能對你有用。