php - 将函数中的 session 变量传递给 codeigniter 中的助手

标签 php codeigniter

这就是我想要做的。这是 Controller 中的函数

public function get_started()
{
    if(test_login($this->session->all_userdata())) {
        $this->load->view('template');
    } else {
        $this->load->view('error');
    }
}

这是 helper

function test_login($sessdata)
{
    if($sessdata->userdata('is_logged_in')) {
        return true;
    } else {
        return false;
    }
}

我已将 is_logged_in 作为 bool session 变量输入。 但是,这不起作用。

我找不到错误。

最佳答案

您可以从助手本身访问 session ,而不是将 session 数据作为参数传递给您的助手,例如:

function test_login() {
  $CI = & get_instance();  //get instance, access the CI superobject
  $isLoggedIn = $CI->session->userdata('is_logged_in');
  if( $isLoggedIn ) {
     return TRUE;
  }
  return FALSE;  
}

和 Controller :

public function get_started(){
   if( test_login() ) {
      $this->load->view('template');
   }
   else {
      $this->load->view('error');
   }
}

关于php - 将函数中的 session 变量传递给 codeigniter 中的助手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15182862/

相关文章:

php - Gulp 命令不适用于 Laravel

php - 抑制 stream_socket_client 警告

javascript - Codeigniter Ajax 发布 : Always Return Same Data

php - Codeigniter 3 更新 mysql 不起作用

php - 强制特定用户在 codeigniter 中注销并销毁他的 session

php - CodeIgniter 始终运行此代码

php - Laravel 中的 session ID 有多独特?

jpg文件上的php gd图像png水印产生奇怪的结果

php - SQL查询输出正确,但是php编写的程序无法显示结果

php - 来自 CLI 的 Codeigniter cron 作业抛出 memcached 错误