《「詳解」從0開始構(gòu)建一個(gè)屬于你自己的PHP框架(上)》要點(diǎn):
本文介紹了「詳解」從0開始構(gòu)建一個(gè)屬于你自己的PHP框架(上),希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
(上)
因?yàn)檫@次發(fā)表的內(nèi)容比較多比較長,為方便大家閱讀;我已分成三篇發(fā)文,大家要是有覺得有價(jià)值、感興趣可以關(guān)注此賬號(hào)或者加入【PHP學(xué)習(xí)特邀群】獲取更多干貨學(xué)習(xí).
廢話少說,開懟
忘了一點(diǎn),就是12.2MB源碼我已經(jīng)壓縮打包好了加群你就可以下載,群是開放的大家都可以加
(上)
如何構(gòu)建一個(gè)自己的PHP框架
框架目錄一覽
框架模塊說明:
入口文件
自加載模塊
錯(cuò)誤和異常模塊
配置文件模塊
(中)
輸入和輸出
路由模塊
傳統(tǒng)的MVC模式提倡為MCL模式
使用Vue作為視圖
數(shù)據(jù)庫對(duì)象關(guān)系映射
服務(wù)容器模塊
(下)
Nosql模塊
接口文檔生成和接口模擬模塊
單元測(cè)試模塊
Git鉤子配置
輔助腳本
如何使用?
首先我們?yōu)槭裁匆獦?gòu)建一個(gè)自己的PHP框架?
可能絕大多數(shù)的人都會(huì)說“網(wǎng)上已經(jīng)游那么多的框架了,還造什么輪子?”.
“造輪子不是目的,造輪子的過程中汲取到知識(shí)才是目的”.
那怎樣才能構(gòu)建一個(gè)自己的PHP框架呢?
我們往下看
.
除此之外我們還需要
單元測(cè)試
nosql支持
接口文檔支持
一些輔助腳本等
最終我的框架目錄如下:
↓
.
入口文件
定義一個(gè)統(tǒng)一的入口文件,對(duì)外提供統(tǒng)一的訪問文件.對(duì)外隱藏了內(nèi)部的復(fù)雜性想.
.
[ file: public/index.php ]
自加載模塊
使用【spl_autoload_register】函數(shù)注冊(cè)自加載函數(shù)到【__autoload】隊(duì)列中,配合使用命名空間,當(dāng)使用一個(gè)類的時(shí)候可以自動(dòng)載入【(require)】類文件.注冊(cè)完成自加載邏輯后,我們就可以使用use和配合命名空間申明對(duì)某個(gè)類文件的依賴.
[ file: framework/Load.php ]
錯(cuò)誤和異常模塊
腳本運(yùn)行期間:
錯(cuò)誤:
通過函數(shù)【set_error_handler】注冊(cè)用戶自定義錯(cuò)誤處理方法,但是【set_error_handler】不能處理以下級(jí)別錯(cuò)誤,
E_ERROR
E_PARSE
E_CORE_ERROR
E_CORE_WARNING
E_COMPILE_ERROR
E_COMPILE_WARNING
和在調(diào)用【set_error_handler() 】函數(shù)所在文件中產(chǎn)生的大多數(shù)
E_STRICT
所以我們需要使用【register_shutdown_function】配合【error_get_last】獲取腳本終止執(zhí)行的最后錯(cuò)誤,這是為了對(duì)于不同錯(cuò)誤級(jí)別和致命錯(cuò)誤進(jìn)行自定義處理.
[ file: framework/hanles/ErrorHandle.php ]
異常:
通過函數(shù)【set_exception_handler】注冊(cè)未捕獲異常處理方法,目的在于捕獲漏網(wǎng)的異常.
[ file: framework/hanles/ExceptionHandle.php ]
加載框架自定義和用戶自定義的配置文件.
[ file: framework/hanles/ConfigHandle.php ]
完整內(nèi)容請(qǐng)關(guān)注 [詳解]從0開始構(gòu)建一個(gè)屬于你自己的PHP框.架(中)——(下)以及【PHP特邀學(xué)習(xí)群】
.
歡迎參與《「詳解」從0開始構(gòu)建一個(gè)屬于你自己的PHP框架(上)》討論,分享您的想法,維易PHP學(xué)院為您提供專業(yè)教程。
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/9376.html