「詳解」從0開始構建一個屬於你自己的PHP框架(上)

「詳解」從0開始構建一個屬於你自己的PHP框架(上)

(上)

因為這次發表的內容比較多比較長,為方便大家閱讀;我已分成三篇發文,大家要是有覺得有價值、感興趣可以關注此賬號或者加入【PHP學習特邀群】獲取更多幹貨學習。

廢話少說,開懟

忘了一點,就是12.2MB源碼我已經壓縮打包好了加群你就可以下載,群是開放的大家都可以加

目錄

(上)

  • 如何構建一個自己的PHP框架

  • 框架目錄一覽

  • 框架模塊說明:

  • 入口文件

  • 自加載模塊

  • 錯誤和異常模塊

  • 配置文件模塊

(中)

  • 輸入和輸出

  • 路由模塊

  • 傳統的MVC模式提倡為MCL模式

  • 使用Vue作為視圖

  • 數據庫對象關係映射

  • 服務容器模塊

(下)

  • Nosql模塊

  • 接口文檔生成和接口模擬模塊

  • 單元測試模塊

  • Git鉤子配置

  • 輔助腳本

  • 如何使用?

如何構建一個自己的PHP框架?

首先我們為什麼要構建一個自己的PHP框架?

可能絕大多數的人都會說“網上已經遊那麼多的框架了,還造什麼輪子?”。

“造輪子不是目的,造輪子的過程中汲取到知識才是目的”。

那怎樣才能構建一個自己的PHP框架呢?

我們往下看

「詳解」從0開始構建一個屬於你自己的PHP框架(上)

.

除此之外我們還需要

  1. 單元測試

  2. nosql支持

  3. 接口文檔支持

  4. 一些輔助腳本等

最終我的框架目錄如下:

框架目錄一覽


「詳解」從0開始構建一個屬於你自己的PHP框架(上)

「詳解」從0開始構建一個屬於你自己的PHP框架(上)

.

框架模塊說明:


入口文件


定義一個統一的入口文件,對外提供統一的訪問文件。對外隱藏了內部的複雜性想。

「詳解」從0開始構建一個屬於你自己的PHP框架(上)

.

[ file: public/index.php ]

自加載模塊


使用【spl_autoload_register】函數註冊自加載函數到【__autoload】隊列中,配合使用命名空間,當使用一個類的時候可以自動載入【(require)】類文件。註冊完成自加載邏輯後,我們就可以使用use和配合命名空間申明對某個類文件的依賴。

[ file: framework/Load.php ]

錯誤和異常模塊


腳本運行期間:

  • 錯誤:

通過函數【set_error_handler】註冊用戶自定義錯誤處理方法,但是【set_error_handler】不能處理以下級別錯誤,

E_ERROR

E_PARSE

E_CORE_ERROR

E_CORE_WARNING

E_COMPILE_ERROR

E_COMPILE_WARNING

和在調用【set_error_handler() 】函數所在文件中產生的大多數

E_STRICT

所以我們需要使用【register_shutdown_function】配合【error_get_last】獲取腳本終止執行的最後錯誤,這是為了對於不同錯誤級別和致命錯誤進行自定義處理。

[ file: framework/hanles/ErrorHandle.php ]

  • 異常:

通過函數【set_exception_handler】註冊未捕獲異常處理方法,目的在於捕獲漏網的異常。

[ file: framework/hanles/ExceptionHandle.php ]

配置文件模塊


加載框架自定義和用戶自定義的配置文件。

[ file: framework/hanles/ConfigHandle.php ]

完整內容請關注 [詳解]從0開始構建一個屬於你自己的PHP框.架(中)——(下)以及【PHP特邀學習群】

「詳解」從0開始構建一個屬於你自己的PHP框架(上)

.


分享到:


相關文章: