0

重複の可能性:
PHP の完全なオブジェクト指向フレームワーク

私が CodeIgniter に不満を感じていることの 1 つは、コントローラーもモデルも拡張できないことです。mod を使用して HMVC を実行できることは知っていますが、それによって継承機能がいくらか得られますが、これには満足していません。オブジェクト指向で、基本的にコントローラーやモデルを拡張できる PHP MVC フレームワークはありますか?

4

1 に答える 1

5

CodeIgniterのドキュメントには別の記載があります。最初の例の 1 つは次のとおりです。

既存のライブラリに何らかの機能を追加するだけでよい場合 (おそらく関数を 1 つか 2 つ追加する場合)、ライブラリ全体を自分のバージョンに置き換えるのはやり過ぎです。この場合、単純にクラスを拡張することをお勧めします。クラスを拡張することは、いくつかの例外を除いて、クラスを置き換えることとほぼ同じです。

クラス宣言は、親クラスを拡張する必要があります。新しいクラス名とファイル名には接頭辞を付ける必要がありますMY_(この項目は構成可能です。以下を参照してください)。

class MY_Controller extends CI_Controller {

    function __construct()
    {
        parent::__construct();
    }
}

// Then you can use it like this:
class Welcome extends MY_Controller {

    function __construct()
    {
        parent::__construct();
    }

    function index()
    {
        $this->load->view('welcome_message');
    }
}
于 2012-08-25T01:47:35.640 に答える