軽量高速なPHPフレームワーク。動作条件がCodeIgniter3ならPHP5.6、CodeIgniter4ならPHP7.3なので少し前のサーバ環境でも問題なく動作します。

CodeIgniterでcontrollerを継承させる

CodeIgniterでコントローラーを継承させるには次のようにします

● 1. 継承元となるクラスを作成する

application/core/MY_Controller.php を作成します
例 : コアクラス Front_Controller() と Admin_Controller() を作る

class Front_Controller extends CI_Controller {
{
    function __construct()
    {
        parent::__construct();
    }
}

class Admin_Controller extends CI_Controller {
{
    function __construct()
    {
        parent::__construct();
    }
}

この時のファイル名 MY_Controller.php は決まっています。 変更すると読み込みエラーとなります。

どうしても変更したい場合は

ファイル application/config/config.php の 117行目あたり

$config['subclass_prefix'] = 'MY_';

を変更すると、MY_ の部分は好きなを文字列に変換することができます。 (後ろの Controller は変更することができないようです)

● 2. コントローラーから継承する

コントローラーから継承するには簡単です。
通常下記のようなコードになっているところを

class Mm_login extends CI_Controller {}

下記のように変更するだけです

class Mm_login extends MY_Controller {}

関連エントリー

No.1150
02/27 17:55

edit

CodeIgniter