2009-06-01 80 views
0

尋找Web開發中的最佳實踐當您在傳統的非框架環境(核心PHP或Perl/CGI)中編寫Web應用程序時,將呼叫從客戶端組織或映射到服務器進程的最簡潔方法是什麼?如何在NON MVC Web應用程序中組織視圖/控制器?

在單一範圍頁面中工作時,答案是相當微不足道的,例如,您需要填寫表單和提交按鈕。您可以將表單的操作設置爲「save.php」,並在頁面和綁定的函數之間建立一對一的關係。所以save.php可以執行保存操作並將表單寫入客戶端。

現在,我使用的唯一非開箱即用的PHP增強功能就是模板引擎(tinybutstrong)。每當我有一個複雜的頁面與多種形式(例如,排序網格,保存一些東西,請求別的東西,一個AJAX組件和一個搜索框),你怎麼放下各種功能(搜索,排序,插入,檢索)到單個顯示頁面(索引)?

您是否使用類似index.php?action = search/index.php?action = insert或類似的方法將每個動作設置爲一個功能類似的頁面(search.php,sort.php,insert.php )每個委託演示函數爲一個腳本(index.php)? varius「views」可以使用「搜索」功能怎麼辦?

我使用的是像搜索或插入這樣的通用術語作爲示例,並且引用PHP也僅用於舉例,因爲我認爲我的問題在最佳實踐中相當普遍。 謝謝。

回答

0

通過創建一個有引用你視圖的動作的東西,你本質上是爲視圖創建一個控制器,而你是MVC方式的三分之二。 (不是說那裏有什麼不對,只是你要去的地方)

Q1。什麼是最簡潔的方式來組織或映射從客戶端到服務器進程的調用?

A1。使用文件系統,但基於數據結構的語義結構(如果可能的話)執行類似/search/mysearch的語義上是正確的選項。需要一點Apache Mojo

Q1。您是否使用類似index.php的東西...

A1。是的,我不會迴避這種做法。使用一點Apache重寫魔術來創建漂亮的路徑是理想的,但除此之外,沒有任何其他神奇的方式來創建控制器。

相關問題