如何仅禁用 Codeigniter 中特定方法的构造函数?

Cod*_*Max 2 php constructor codeigniter

我在这个用户控制器中有 30 多个方法。我不想为这个单一的方法创建另一个控制器。

class User extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        if(empty($_SESSION['userid'])){
            $error['error'][] = "Please LogIn";
            echo json_encode($error);
            exit;
        }
    }


    public function index(){
    }

    public function get_public_pages(){

    }


}
Run Code Online (Sandbox Code Playgroud)

我不希望在访问 get_public_pages 方法时运行构造函数。我该怎么做?

Vin*_* VT 5

尝试这个,

public function __construct(){
  parent::__construct();
  $method = $this->router->fetch_method();  

  if(empty($method ) && $method != 'get_public_pages'){
    if(empty($_SESSION['userid'])){
        $error['error'][] = "Please LogIn";
        echo json_encode($error);
        exit;
    }
 }  
}
Run Code Online (Sandbox Code Playgroud)