在codeigniter中的routes.php文件中不能使用会话变量?

Mau*_*tel 10 codeigniter

我使用以下代码来检索routes.php中的会话变量

if($this->db_session->userdata('request_url')!="")
{
$route['user/(:any)'] = "search_user_name/redirect_url/".$_SESSION['request_url'];
$this->db_session->unset_userdata('request_url');
}
else {
    $route['user/(:any)'] = "search_user_name/index/$1";
}
Run Code Online (Sandbox Code Playgroud)

会话变量将设置为template/header.php

$this->db_session->set_userdata('request_url', $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);
Run Code Online (Sandbox Code Playgroud)

cen*_*zen 4

您不能在routes.php中使用db_session,因为routes.php是在加载db_session之前解析的。也许您应该创建一个基本控制器并从基本控制器的构造函数进行重定向。