Ram*_*min 6 php codeigniter codeigniter-3
我的问题是升级到Codeigniter 3.0后的自定义错误页面.
我曾经有一个Errors控制器处理网站的404错误页面 - 在这个控制器上我已经定制了一些页面部分,比如如果用户登录,它在导航栏上显示用户名等等(是的,在404上)错误页面).
升级到CI 3.0后,我注意到错误页面在不同的文件夹中处理,我开始以这种方式迁移; 但问题是我无法将任何变量加载到此页面,例如会话变量或甚至无法在这些页面上使用任何CI的功能.
我认为这些页面应该只是HTML页面,但有没有办法将变量加载到这些错误页面?
Gop*_*lan 17
您需要设置application/config/routes.php以下路线
$route['404_override'] = 'my404';
Run Code Online (Sandbox Code Playgroud)
然后,您需要在controllers目录中创建一个新控制器 (application/controllers/)
<?php
class My404 extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->output->set_status_header('404');
$this->load->view('err404');//loading in custom error view
}
}
Run Code Online (Sandbox Code Playgroud)
并创建一个err404视图.就这样!
参考:预留路由