本文實例講述了Codeigniter控制器controller繼承問題。分享給大家供大家參考,具體如下:
在項目中經常用到這樣一種情況,後台中每個頁面都要判斷Session來確定用戶是否登陸狀態.對於在Codeigniter中,那麼就會考慮每個控制器繼承一個公用控制器。
比如:AdminBase 為應用後台的公用的控制器,在每一個應用後台控制器裡面都來繼承公共的AdminBase ,但是同時要確保AdminBase 也是繼承CI_Controller的。
前台HomeBase也是同樣的道理。
具體實現很簡單,只要在application/core下面新建MY_Controller.php,如下
(MY_是可配置的,application/config/config.php 文件並找到這一項:$config['subclass_prefix'] = 'MY_';)
class MY_Controller extends CI_Controller { function __construct() { parent::__construct(); } } class AdminBase extends MY_Controller { function __construct() { parent::__construct(); ...... } ...... } class HomeBase extends MY_Controller { function __construct() { parent::__construct(); ...... } ...... }
然後在application/controllers裡面的控制器就可以繼承了,比如application/controllers/admin/blog.php中
class Blog extends AdminBase { function __construct() { parent::__construct(); ...... } ...... }
更多關於CodeIgniter框架相關內容感興趣的讀者可查看本站專題:《codeigniter入門教程》
希望本文所述對大家基於CodeIgniter框架的PHP程序設計有所幫助。