Re: [請益] 請問PHP的MVC架構的問題

看板PHP作者 (環島失敗.....囧)時間9年前 (2014/08/13 07:10), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串4/4 (看更多)
※ 引述《cat99961 (阿湯)》之銘言: : 因為發現有的公司在實作PHP似乎是用MVC架構的,於是上網查了一下MVC架構。 : 我歸納出 : Model-PHP程式設計師利用物件導向的方式撰寫一些模組供使用 : VIEW-介面設計人員進行圖形介面設計,和PHP程式設計師無關。 MVC的定義去看WIKI就好 其實WIKI的解釋滿詳細的 : 以下是我的疑問 : 1.請問以上這2點歸納的正確嗎? : 2.Model一定用OO的方式寫嗎? 在正常的 MVC 的世界裡...應該全部都是OO : 3.VIEW真的和PHP程式設計師無關嗎? 不可能....因為你也會需要有判斷的情境 也可能需要跑迴圈的情境 if & for(each) 應該會很常出現 但是絕對不會在 VIEW 上面看到商業邏輯 : 4.至於Controller我不太了解它是什麼,和"PHP程式設計師"有關嗎? : 5. MVC 和 framework 一直常被一起提,framework 是否只是協助製作MVC架構的軟體? : 6.不用framework 也可實作MVC嗎?用framework實作MVC真的會比較容易嗎? : 希望各位高手可以幫我解答這些觀念上的問題,小妹感激不盡..... 不要執著在字面上的用意 MVC 只是一個概念 CONTROLLER 控制資料 MODEL 封裝資料 VIEW 畫資料 就這樣 FRAMEWORK 只是一個工具 用來幫助你快速開發的工具 所以 MVC FRAMEWORK,他只是輔助你寫出 MVC 基本概念而已 剩下的要靠你的程式架構與規劃去做 不用 FRAMEWORK 也可以做出 MVC 通常 MVC 的 URL 長這樣 http://localhost/index.php?r=job/view&aaa=1 index.php 是主要控制點 由他來分配要去哪一個 CONTROLLER job 就是那個 CONTROLLER 但 job 下可能不只做一件事 可能下面還有 ajax, list 所以需要 /view 告訴 CONTROLLER 說 進到 job 後要去 view 的 function 畫畫面 而 aaa 就是 view 拿到的參數 你可以先從做簡單的 MVC 開始寫 CONTROLLER 拿到資料後 交給 MODEL 去封裝(變成你想要的資料結果) 然後交給 VIEW 去 RENDER 這樣子 OK 了,再去看 N-TIER 你會比較更了解 OO 在幹嘛 如果在更進階一點 再去看 DESIGN PATTERN 你就會知道 MVC 其實也是一種複合設計模式 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.20.51 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1407885035.A.1B0.html

08/13 14:53, , 1F
非常感謝您,觀念寫得很好
08/13 14:53, 1F

08/13 14:53, , 2F
還有感謝其他各位
08/13 14:53, 2F

08/13 14:55, , 3F
我現在正在學symfony,希望學了之後可以更具體的了解
08/13 14:55, 3F

08/19 17:02, , 4F
推了,感謝教學!
08/19 17:02, 4F
文章代碼(AID): #1Jwfxh6m (PHP)
文章代碼(AID): #1Jwfxh6m (PHP)