真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

處理ThinkPHP框架中空操作和空控制器的方法

這篇文章主要介紹處理ThinkPHP框架中空操作和空控制器的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)公司,是成都地區(qū)的互聯(lián)網(wǎng)解決方案提供商,用心服務為企業(yè)提供網(wǎng)站建設、成都app軟件開發(fā)、小程序設計、系統(tǒng)定制設計和微信代運營服務。經(jīng)過數(shù)十載的沉淀與積累,沉淀的是技術和服務,讓客戶少走彎路,踏實做事,誠實做人,用情服務,致力做一個負責任、受尊敬的企業(yè)。對客戶負責,就是對自己負責,對企業(yè)負責。

所謂的空操作和空控制器,簡而言之就是系統(tǒng)中不存在該方法或控制器,它們會導致系統(tǒng)報錯。

正確URL(測試環(huán)境):  http://oa.com/index.php/admin/public/login  訪問如下:

處理ThinkPHP框架中空操作和空控制器的方法

一:空操作處理

修改方法為loginw時報錯如下:

處理ThinkPHP框架中空操作和空控制器的方法

系統(tǒng)默認內(nèi)置報錯機制:1、用戶體驗差  2、嚴重安全隱患。

查看父類控制器文件Controller.class.php,發(fā)現(xiàn)如下代碼:

處理ThinkPHP框架中空操作和空控制器的方法

意思是說,如果調(diào)用的方法不存在但定義了_empty()方法,就會去執(zhí)行_empty(),或者展示與調(diào)用的方法同名的模板文件。我們不可能為每一個未知的方法創(chuàng)建模板,因此此處我們使用_empty()方法來處理空操作。在控制器Public中定義_empty()方法,如下:

處理ThinkPHP框架中空操作和空控制器的方法

運行結果:

處理ThinkPHP框架中空操作和空控制器的方法

可以通過在_empty()方法中引入一個模板文件,使頁面更加美觀,此處只是測試。但當我們有很多控制器時,在

每個控制器中分別定義一個_empty()不太合理,此時可以在父類Controller.class.php中定義,則子類皆可使用,如下:

處理ThinkPHP框架中空操作和空控制器的方法

但通常不會修改父類Controller.class.php中的代碼,可通過在子類與父類之間添加一個中間控制器來實現(xiàn)(詳見下篇)。

二、空控制器處理

修改控制器名為Publicu 錯誤如下:

處理ThinkPHP框架中空操作和空控制器的方法

查看App.class.php 有如下代碼:

處理ThinkPHP框架中空操作和空控制器的方法

因此可再創(chuàng)建一個EmptyController.class.php控制器并內(nèi)置_empty()方法,當訪問的控制器不存在時,訪問此控制器。

處理ThinkPHP框架中空操作和空控制器的方法

再次訪問頁面,如下:

處理ThinkPHP框架中空操作和空控制器的方法

以上是處理ThinkPHP框架中空操作和空控制器的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


本文標題:處理ThinkPHP框架中空操作和空控制器的方法
網(wǎng)站網(wǎng)址:http://weahome.cn/article/gsodce.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部