0

同じコントローラーで、リダイレクトする方法が 2 つあります。

Class Home extends mY_Controller{

    public $view;
    public $redirect;
    function first_method
    {
        $this->view =   FALSE;
        //   $this->second_method();
        //   redirect('Home/second_method');            
    }

    function second_method()
    {
        echo 'Second one';
    }       
} 

どちらが最良のアプローチであるかを知りたいのですが、特定の条件が一致しない場合、my_controller にリダイレクト メソッドがあります。簡単にするために、リダイレクト変数を使用してユーザーをリダイレクトします。これを投稿しています。

<?php
class MY_Controller extends CI_Controller 
{
    protected $data;

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

    public function _remap($method, $parameters)
    {
        if($this->view === FALSE)
        {
            redirect($this->redirect);
        }else{
            $this->load->view('my_view');
        }   

    }
}   

最初の方法を使用すると、2 行目にアクセスできません

4

1 に答える 1

0

redirect()必要に応じて後で簡単に HTTP 応答コードを変更できるので、使用することをお勧めします。また、一部をrefresh型にすることもお勧めします。

後ですべてのリダイレクトを変更する必要があり、それらにいくつかのロジックを追加することさえできる場合は、いつでもヘルパーをオーバーライドできます。

于 2012-09-20T09:24:58.970 に答える