我在 routes.php 文件中设置了 404_override。文件很简单:
public function missing_page()
{
$this->output->set_status_header('404');
$this->load->view('header');
$this->load->view('404');
$this->load->view('footer');
}
如果我导航到不存在的控制器(即 /missing-page),自定义 404 方法会正确加载。如果我导航到现有控制器但不存在方法(即 /not-missing/missing),我会收到错误消息:
Codeigniter 错误日志:Severity: Notice --> Undefined property: CI_Loader::$user_model /application/views/header.php 30
PHP错误日志:
PHP Fatal error: Call to a member function active() on a non-object in /views/header.php on line 30
为什么这适用于一个但不能适用于另一个?