我們在用Thinkphp6做項目開發的時候,通常會把項目分為后端(admin),前端(web),接口端(api),小程序端(mini),這樣划分項目框架是沒有問題的,但是如果項目比較復雜,這樣划分會造成一個模塊所用到的方法,會在不同的端口出現。如果該項目要刪除該模塊,需要在不同的端刪除對應的模塊。例如:
這是一個后端(admin),假如這個端有新聞管理,就需要在這里新建一個News.php,在路由下寫上對應的路由文件。
如果有一個前端(index),還有一個接口端(api)端口,就需要按照這樣的目錄新建。
如果有20個新聞這樣的模塊。一個controller目錄里面有20個模塊。3個端口就有60個文件。
顯然,如果我們不需要新聞這個模塊,需要到對應的后端(admin)前端(web)接口(api)刪除對應的 控制器,模型,路由,驗證等文件。
采用這種方式來構建項目,顯然是不合理的。
我們可以模塊化,構建不同的模塊來解決這個問題:
這樣一個新聞模塊,后端(admin)使用 controller/backend/index.php的控制器,路由在 route/backend.php 里面進行配置。
同理可以有:后端模塊(backend)前端(web)接口端(api)小程序端(mini)這樣當我們不需要該模塊,只需要刪除該目錄即可。