2009-10-18 412 views
1

我一直在用Zend的方式來處理MVC(用PHP)。我對Zend Framework的理解是,每種類型的用戶請求都映射到特定的控制器(反過來可能映射到或不映射到模型),並且每個動作映射到一個視圖。我注意到了Codeigniter和Kohana中的相同模式,並且在某種程度上也在Symfony中。實際上,URL地圖如下:MVC(PHP):控制器/操作是否映射到每個請求?

www.domain.com/index.php/CONTROLLER/ACTION/...additional parameters... 

這是MVC的情況嗎?這與頁面控制器有什麼不同作爲設計模式?

回答

1

Zend Framework使用Two Step View。這與MVC非常相似。正如你所看到的,與體系結構和URL映射之間的對應關係並不那麼多。
如果您想了解可能的架構,請閱讀Martin Fowler的PoEAA

+0

ZF可以與MVC模式一起使用,對於View部分它使用2步模式 – NDM 2009-10-18 20:07:51

0

我認爲主要的區別在於,使用Page Controller模式,您的網站的每個頁面都有一個單獨的文件。在PHP中的MVC的典型實現中,您可以將常見操作組合在一個控制器中。此外,PHP中的典型MVC實現支持自定義路由,允許您創建控制器/操作的自定義映射,而無需使用http服務器重寫。

0

1 「這是始終與MVC的情況?

www.domain.com/index.php/CONTROLLER/ACTION/...additional參數......」

沒有它並不總是您可以擴展的路由情況下要基於域(爲例):

使用domain.tld/USER進行USER.DOMAIN.TLD

2 - 我想,但我不是100%肯定的頁面控制器是MVC模式的子集 我的意思是頁面控制器=只有控制器!

0

我的回答here可能會幫助你(或在這種情況下的其他人,因爲這已設置爲已回答)。

相關問題