我正在尝试为我的php网站创建身份验证。我正在使用codeigniter框架。我将不得不在我网站的所有页面中验证会话。因此,为了避免代码重复,我计划在辅助函数中执行此操作。现在我的用户凭据是 在我的数据库中,我想访问模型以从帮助程序查询数据库 功能。在控制器类中,我可以使用
完成此操作$this->load->model('user_model');
请在帮助文件中告诉我它的等效内容。任何形式的建议也值得赞赏。提前谢谢。
答案 0 :(得分:20)
您将无法使用$ this来帮助您在帮助程序中访问CI实例,但CI可以这样做 -
首先,您需要对CI实例的引用:
$CI =& get_instance();
然后,如果您需要加载模型,您可以这样做:
$CI->load->model('model_name');
最后调用模型中的任何函数,如下所示:
$CI->model_name->function_name();
基本上,使用$ CI代替$ this。希望有所帮助。
答案 1 :(得分:1)
重复的代码并不多。我建议采用这种方法:
function __construct()
{
parent::Controller();
if ($this->auth->is_logged_in() !== TRUE) // "auth" is the authentication library
{
redirect('login');
}
}