CodeIgniter 4 建議路線圖 codeigniter thinkphp codeigniter 3.0 codeigniter cms
data-id="1190000004868218">
我們綜合考慮了社區的願望和意見後,也對什麼樣的未來對CI 是最合適的做了一些思考,然後,CI 理事會對框架的未來做出了一些決策。預告一下,未來將會有重大變化,但我們相信他們不僅為我們的未來做準備,也會保持 CodeIgniter 的一貫特點 - 簡潔、快速和靈活。
這篇文章是對未來一個簡單的概述。請記住,這只是最初的計劃。任何資訊都可能會隨著開發的進行而改變。
核心變化
從 CodeIgniter 第一版發布以來,PHP 社群發生了巨大變化。 CodeIgniter 的許多核心要素在當時是必須的,但當 PHP5 發布後,CodeIgniter 的核心幾乎沒有任何變化。如果未來 CodeIgniter 想要繼續保持高水準並鞏固其在 PHP 框架中的地位,則必須進行大改變。
這表示系統必須全部重寫。新的 CI 將在獨立的程式碼庫中開發以保持程式碼的清晰。我們設想會復用一些先前的程式碼,但重點是 現代的 清晰的程式碼。
自從我們以 PHP 7 為目標以來,PHP 5.6 已進入安全維護模式,並將在幾個月後完全停止支援。 CI 暫時不會為一個即將停止支援的 PHP 版本發布新版本。我們知道主機的環境千差萬別,那麼有些程式可能就無法完全支援 PHP 7,所以 3.x 分支將繼續維護一段時間 - 將遠遠長於 3.x 發布後的 2.x 分支的 EOL 時限。
application 和 system 目錄都會支援 PSR-4 自動載入。 CodeIgniter 將使用自己的自動載入器,並將整合 Composer。
我們將封裝一些組件,以便在大多數情況下可以用於 CodeIgniter 以外的項目。
套件/模組
我們將丟棄應用程式包和模組的概念。不必驚慌!因為你可以用名字空間來處理大多數情況 - 至少控制器和模型是這樣的。對於其他的例如視圖、配置文件和 Helper 等,我們相信可以讓這些東東支持名字空間。你也可以把所有包的功能和模組的路由能力放到任意目錄中,只要告訴自動載入器如何找到他們。
路由
路由功能將會被更新。 URI 直接對應到控制器/方法這個『魔術路由』功能將會關閉,以便讓你選擇自己喜歡的路由方式。在路由設定檔中你可以選擇使用『魔術路由』或單獨指定每個路由。
改進的日誌系統
日誌系統將被改進,但具體細節尚未確定。
測試
我們將繼續使用 PHPUnit 做測試。這也意味著你需要自己測試應用程序,但我們將為你準備好所需的工具。
向後相容性
正如上面講到的那樣,這一定是一個和舊版本不相容的版本。我們認為這應該是框架最好的未來。對於這次的重大變化,我們已經做了很多年的基礎工作,我們將盡可能的使過渡更平滑,但是對於我們能提供一個怎樣的現代化的基礎代碼仍有待觀察。
我們將盡最大努力保持讓 CodeIgniter 多年來流行的特性,即快速、簡潔和『優雅』。
開發時間表
整個開發過程將分為三個階段。
下列類別庫將從核心刪除,改為按需下載:排版類別、FTP 類別、ZIP 類別和 XML-RPC 類別。
購物車類別、Javascript 類別、單元測試類別和 Trackback 類別將被刪除。
我們期望在一年內能完成一個內核基本成型的 Alpha 版本。之後,我們將把重點放在改進內核與開發剩餘軟體包的工作中。確切的時間表可能會有所不同,因為,與大多數開源專案一樣,這取決於社區貢獻的數量與質量,以及核心開發者的時間和精力。
第一階段
第一階段將專注於抓住框架最重要的部分。這將是框架其他部分的基礎。他們包括:
自動載入器
依賴注入
日誌
-
控制器
模型
資料庫層
配置
- 🜎 。他們包括:
- Helper
- 語言/國際化特性
- 影像處理類別庫
- 分頁
- 上傳類
- Session
- 視圖 -蟎蒟和分析工具
- 視圖 -選貨包。在這個時間點,框架應該可以發布了,不需要等到所有類別庫都準備好。
- FTP
- XML-RPC
- Zip
- 排版類
- 興奮,並迫不及待的希望框架為新版踏出第一步。不要在一旁圍觀了,趕快來構築框架的未來吧。

PHP在現代編程中仍然是一個強大且廣泛使用的工具,尤其在web開發領域。 1)PHP易用且與數據庫集成無縫,是許多開發者的首選。 2)它支持動態內容生成和麵向對象編程,適合快速創建和維護網站。 3)PHP的性能可以通過緩存和優化數據庫查詢來提升,其廣泛的社區和豐富生態系統使其在當今技術棧中仍具重要地位。

在PHP中,弱引用是通過WeakReference類實現的,不會阻止垃圾回收器回收對象。弱引用適用於緩存系統和事件監聽器等場景,需注意其不能保證對象存活,且垃圾回收可能延遲。

\_\_invoke方法允許對象像函數一樣被調用。 1.定義\_\_invoke方法使對象可被調用。 2.使用$obj(...)語法時,PHP會執行\_\_invoke方法。 3.適用於日誌記錄和計算器等場景,提高代碼靈活性和可讀性。

Fibers在PHP8.1中引入,提升了並發處理能力。 1)Fibers是一種輕量級的並發模型,類似於協程。 2)它們允許開發者手動控制任務的執行流,適合處理I/O密集型任務。 3)使用Fibers可以編寫更高效、響應性更強的代碼。

PHP社區提供了豐富的資源和支持,幫助開發者成長。 1)資源包括官方文檔、教程、博客和開源項目如Laravel和Symfony。 2)支持可以通過StackOverflow、Reddit和Slack頻道獲得。 3)開發動態可以通過關注RFC了解。 4)融入社區可以通過積極參與、貢獻代碼和學習分享來實現。

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP不是在消亡,而是在不斷適應和進化。 1)PHP從1994年起經歷多次版本迭代,適應新技術趨勢。 2)目前廣泛應用於電子商務、內容管理系統等領域。 3)PHP8引入JIT編譯器等功能,提升性能和現代化。 4)使用OPcache和遵循PSR-12標準可優化性能和代碼質量。

PHP的未來將通過適應新技術趨勢和引入創新特性來實現:1)適應云計算、容器化和微服務架構,支持Docker和Kubernetes;2)引入JIT編譯器和枚舉類型,提升性能和數據處理效率;3)持續優化性能和推廣最佳實踐。


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

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

記事本++7.3.1
好用且免費的程式碼編輯器

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

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版