我正在使用PHP MVC模式,沒有任何框架,現在我有一個視圖文件與一些數據被插入到它,這將被保存到數據庫中。現在我的問題是如何將視圖文件連接到控制器或模型。如何使用PHP MVC模式連接View到Controller?
回答
該視圖不應該保存任何內容到數據庫,這是模型的工作。該視圖僅用於渲染。通常,您將在您的控制器中實例化一個視圖對象,將它傳遞給您要渲染的數據,然後調用一些渲染方法。也許是這樣的:
$view = new View();
$view->setTemplate('/path/to/file');
$view->setValues(array(
'key1' => 'value1',
'key2' => 'value2',
));
$view->render();
如果你想保存在數據庫中的數據,這是無關的視圖。你可能有這樣的事情:
$model = new Model();
$model->setValues(array(
'key1' => 'value1',
'key2' => 'value2',
));
$model->save();
$view = new View();
$view->setTemplate('path/to/file');
$view->setValues($model->getValues());
$view->render();
但我沒有使用任何類或對象裏面查看文件。它就像一個簡單的HTML文件。 – useCase 2011-05-25 18:55:34
它不應該*有*其中定義的任何類。不要認爲它是一個「視圖文件」,將其視爲一個由View對象呈現的模板。你必須編寫一個View類,它將作爲輸入,模板和它需要的任何可能的變量,並輸出結果HTML。這可能和調用readfile()一樣簡單。 – 2011-05-25 19:01:42
控制器可以包括視圖和模型文件。
當通過url調用控制器時,使用模型方法獲取或放置內容(在數據庫中),另一個發送數據以查看,並且爲瀏覽器輸出查看。
控制器從視圖中獲取數據並將其傳遞到模型中。該模型處理持久性。同樣在HTTP世界中,我會說控制器從請求中獲取數據,而不是直接從視圖中獲取數據,但這些是實現細節。
你只是想確保模型不以任何方式依賴視圖。這是MVC中的主要規則之一。
- 1. 如何使用Storyboard與工廠模式View Controller實例化?
- 2. MVP(Model View Presenter)或MVC(Model View Controller)
- 3. 如何將myapp/index.php/controller/view映射到myapp/controller/view?
- 4. 如何以編程方式從不相關的View Controller調用View Controller?
- 5. 使用Costum View Controller鏈接Storyboard視圖?
- 6. 如何連接RESTFul Spring Controller和MVC Spring Controller
- 7. One view controller with multiple views vs multiple view controller in a larger view controller
- 8. 如何通過View Controller將信息傳回View Controller?
- 9. 如何將Table View Controller的類型更改爲常規View Controller?
- 10. 一旦點擊按鈕,我如何從View Controller導航到另一個View Controller?
- 11. 切換到View Controller B後如何保持View Controller A的狀態?
- 12. 如何使用mvc連接到Restful Service
- 13. Storyboard從View Controller導航到Tab view controller iOS 5
- 14. 從segues到show/present view controller
- 15. SQL VIEW使用連接
- 16. Yii Framework如何從Controller中調用View?
- 17. 如何使用Repository模式連接點?
- 18. 如何使用AJAX Post調用ASP.NET MVC Controller操作並返回新的View?
- 19. 具有View Controller和Tab Bar Controller的Iphone應用程序的模式是什麼?
- 20. iOS View Controller Life Cyle
- 21. 如何使用PHP連接到SQL Server
- 22. 如何使用PHP連接到twitpic API?
- 23. ASP.NET MVC:如何輸出當前正在呈現的Controller和View?
- 24. link_to controller action in view
- 25. 以編程方式替換View Controller?
- 26. 從View到Controller傳遞dynamicaly創建的數組。 ASP.NET MVC V1
- 27. 如何以編程方式調用View Controller?
- 28. Modal View Controller崩潰
- 29. Present Popover View Controller Swift
- 30. 使用PHP連接到特定的DB2模式
現在我有連接通過控制器視圖文件,但現在我需要怎麼視圖文件連接到控制器,因爲我需要的視圖文件數據保存到數據庫 – useCase 2011-05-25 18:51:13
可能重複[如何連接控制器在PHP OOP查看?(http://stackoverflow.com/questions/6111599/how-to-connect-controller-to-view-in-php-oop) – Cfreak 2011-05-25 18:52:14