在ThinkPHP6
中新增了一個叫做「多重應用」的名詞,這個在ThinkPHP5
中並沒有,那麼這個是乾啥的呢?來聽php中文網投稿作者王雪芹嘮叨嘮叨嘮叨……
首先看下ThinkPHP6官方手冊關於多應用的目錄結構:
├─app 应用目录 │ ├─index 主应用 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ ├─view 视图目录 │ │ ├─config 配置目录(优先) │ │ └─ ... 更多类库目录 │ ├─admin 后台应用 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ ├─view 视图目录 │ │ ├─config 配置目录(优先) │ │ └─ ... 更多类库目录 │ ├─public WEB目录(对外访问目录) │ ├─admin.php 后台入口文件 │ ├─index.php 入口文件 │ ├─router.php 快速测试文件 │ └─.htaccess 用于apache的重写 │ ├─config 应用配置目录 │ ├─index index应用配置 │ └─admin admin应用配置 │ ├─view 视图目录 │ ├─index index应用视图目录 │ └─admin admin应用视图目录 │ ├─route 路由定义目录 │ ├─index index应用路由定义目录 │ └─admin admin应用路由定义目录 │ ├─runtime 运行时目录 │ ├─index index应用运行时目录 │ └─admin admin应用运行时目录
(來源於:ThinkPHP6.0快速開發手冊(案例版))
哎呀,這樣一看發ThinkPHP6的多應用也不過如此,一個前台index應用,一個後台admin應用,這就叫多應用了。想當年,我們用ThinkPHP5那也開發過前台應用index、後台應用admin,這又啥差別呢?
區別1:就是必須透過composer下載後才能使用。
ThinkPHP6框架預設下載後是單一應用,要想使用多應用就要下載:
composer require topthink/think-multi-app
區別2:路由定義必須在目前的應用下。
我們知道ThinkPHP5的時候,我們可以在根目錄下的路由檔案定義,但是ThinkPHP6後必須在應用目錄下定義路由。
區別3:ThinkPHP6支援應用入口。
我們可以在ThinkPHP6中對某個應用程式單獨設定入口文件,例如admin應用我可以設定admin.php入口文件來存取。
區別4:網域綁定應用程式。
舉例ThinkPHP5的時候我們定義www.a.com/index/index/company.html的路由後,可以實現這樣的效果www.a.com/company.html
但是ThinkPHP6你會發現怎麼設定路由,index應用程式都去不掉,總是www.a.com/index/company.html,這個可咋整?
那麼解決方案就可以用到了網域綁定應用程式了,我們在config/app.php 設定檔中定義網域和應用程式的綁定,如下:
'domain_bind' => [ 'www.a.com' => 'index', // 域名绑定到www应用 'admin.a.com' => 'admin', // admin绑定到后台应用 ],
這樣我們就可以用www.a.com/company.html來訪問了。
最後:
總的來說,ThinkPHP6的多重應用相對比ThinkPHP5還是有比較大的進步,雖然在第一次使用麻煩一點需要composer下載,但這不影響我們對ThinkPHP6多應用的青睞。
【推薦教學】
1. thinkphp技術文章
2. thinkphp影片教學
#######以上是ThinkPHP6新增''多應用''與ThinkPHP5有啥差別呢的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了ThinkPHP的內置測試框架,突出了其關鍵功能(例如單元和集成測試),以及它如何通過早期的錯誤檢測和改進的代碼質量來增強應用程序可靠性。

本文討論了在無服務器體系結構中使用ThinkPHP的關鍵注意事項,專注於性能優化,無狀態設計和安全性。它突出了諸如成本效率和可擴展性之類的收益,但也應對挑戰

本文討論了在ThinkPHP微服務中實施服務發現和負載平衡,重點是設置,最佳實踐,集成方法和推薦工具。[159個字符]

ThinkPHP的IOC容器提供了高級功能,例如懶惰加載,上下文綁定和方法注入PHP App中有效依賴性管理的方法。Character計數:159

ThinkPHP具有輕巧的設計,MVC架構和可擴展性。它通過各種功能提高可擴展性,加快開發並提高安全性。

本文概述了使用ThinkPhp和RabbitMQ構建分佈式任務隊列系統,重點是安裝,配置,任務管理和可擴展性。關鍵問題包括確保高可用性,避免常見的陷阱,例如不當


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3漢化版
中文版,非常好用

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)