首頁 >php框架 >ThinkPHP >thinkphp登入限制時__construct和_initialize的差別介紹

thinkphp登入限制時__construct和_initialize的差別介紹

尚
轉載
2020-05-20 09:09:053179瀏覽

thinkphp登入限制時__construct和_initialize的差別介紹

ThinkPHP支援兩種建構方法:  __construct和_initialize(ThinkPHP內建的建構方法)。

修改使用者控制器類別檔案UserController.class.php 如下:

thinkphp登入限制時__construct和_initialize的差別介紹

#1、__construct建構方法

修改中間控制器類別CommonController.class.php 如下:

thinkphp登入限制時__construct和_initialize的差別介紹

說明:empty() 5.5 版本之後支援表達式,否則會報如下錯誤:

thinkphp登入限制時__construct和_initialize的差別介紹

#執行結果如下:

thinkphp登入限制時__construct和_initialize的差別介紹

中間控制器必須先建構父類,才能使用父類別的方法,修改程式碼如下:

thinkphp登入限制時__construct和_initialize的差別介紹

執行結果:

thinkphp登入限制時__construct和_initialize的差別介紹

2、_initialize建構方法,如下:

thinkphp登入限制時__construct和_initialize的差別介紹

透過_initialize建構方法同樣可以實現上述效果,無需建構父類,查看基類控制器程式碼如下:

thinkphp登入限制時__construct和_initialize的差別介紹

透過Controller.class.php中的架構函數可以看出,只要有_initialize方法,就會直接呼叫來初始化控制器,因此ThinkPHP內建

的建構方法不需要再建構父類別。

推薦教學:《TP5

以上是thinkphp登入限制時__construct和_initialize的差別介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除