Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter-在不影响特定控制器功能的情况下向构造函数添加代码_Php_Codeigniter_Codeigniter 3 - Fatal编程技术网

Php Codeigniter-在不影响特定控制器功能的情况下向构造函数添加代码

Php Codeigniter-在不影响特定控制器功能的情况下向构造函数添加代码,php,codeigniter,codeigniter-3,Php,Codeigniter,Codeigniter 3,这个问题的简短版本 如果(控制器函数不是“Login()”函数),如何在Codeigniter构造函数中编写类似的代码 if(Controller Function is Not "Login()" Function) { if(empty($this->session->userdata('user_id'))){ redirect(base_url()); } } 如果不清楚此问题的长版本,请选择短版本 这是我的codeigniter项目的管理员

这个问题的简短版本

如果(控制器函数不是“Login()”函数),如何在Codeigniter构造函数中编写类似的代码

if(Controller Function is Not "Login()" Function)
{
    if(empty($this->session->userdata('user_id'))){
        redirect(base_url());
    }
}
如果不清楚此问题的长版本,请选择短版本

这是我的codeigniter项目的管理员控制器

class Admin extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        /**
        * 
        * 
        *  Here - I am going to check session is set or not.....
        * 
        * 
        */

    }

    public function login(){

    }

    public function update(){

    }

    public function edit(){

    }

    public function insert(){

    }

        /**
        * 
        * 
        *  And Many More Functions
        * 
        * 
        */

}
我将向构造函数添加以下代码部分

if(empty($this->session->userdata('user_id'))){
    redirect(base_url());
}
写这篇文章时,即使没有会话,我也无法进入
login()
函数。如何在构造函数中编写上述代码,而不影响登录功能

我看起来像这样

if(Controller Function is Not "Login()" Function)
{
    if(empty($this->session->userdata('user_id'))){
        redirect(base_url());
    }
}

1.设置默认控制器为登录

function __construct()
{
    if(!($this->session->has_userdata('user_id')) && $this->router->fetch_method() != "login"){
        redirect(base_url());
    }
}
2.如果未将默认控制器设置为登录

function __construct()
{
    if(!($this->session->has_userdata('user_id'))&& $this->router->fetch_method() != "login"){
        redirect(base_url()."login");
    }
}

1.设置默认控制器为登录

function __construct()
{
    if(!($this->session->has_userdata('user_id')) && $this->router->fetch_method() != "login"){
        redirect(base_url());
    }
}
2.如果未将默认控制器设置为登录

function __construct()
{
    if(!($this->session->has_userdata('user_id'))&& $this->router->fetch_method() != "login"){
        redirect(base_url()."login");
    }
}

你可以用这样的东西

function __construct()
{
    if(!($this->session->has_userdata('user_id')) && $this->router->fetch_method()!='login'){
        redirect(base_url());
    }
}

你可以用这样的东西

function __construct()
{
    if(!($this->session->has_userdata('user_id')) && $this->router->fetch_method()!='login'){
        redirect(base_url());
    }
}