Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在cibonfire codeigniter中使用全局变量_Php_Codeigniter - Fatal编程技术网

Php 在cibonfire codeigniter中使用全局变量

Php 在cibonfire codeigniter中使用全局变量,php,codeigniter,Php,Codeigniter,我在用篝火做我的项目 我必须根据username从数据库中获取userid,并在每个视图中使用该userid 现在我正在做的是我有一个模型函数,在每个控制器函数中调用该函数来获取userid,然后userid被设置为查看页面 我必须对每个控制器功能重复这段代码, 我的问题是,有没有办法在控制器中只使用一个userid,并在每个视图中使用该userid 我的控制器功能:- class asd extends Admin_Controller { protected $role; public

我在用篝火做我的项目

我必须根据
username
从数据库中获取
userid
,并在每个视图中使用该userid

现在我正在做的是我有一个模型函数,在每个控制器函数中调用该函数来获取
userid
,然后
userid
被设置为查看页面

我必须对每个控制器功能重复这段代码, 我的问题是,有没有办法在控制器中只使用一个
userid
,并在每个视图中使用该
userid

我的控制器功能:-

class asd extends Admin_Controller {
protected $role;   
public function _construct(){
    parent::_construct();
     $this->load->library('users/auth');
     $this->load->model('helpdesk_model');
     $role = $this->helpdesk_model->getRole($this->auth->username());
}
}
我正在使用
Template::set('role',$role)在我的控制器功能中
我的看法是:-


将变量添加到控制器并在构造函数中初始化它:

class Some_controller extends CI_Controller {
    protected $data;

public function __construct() {
       parent::__construct();
       $this->load->model('some_model');
       $this->data['user_id'] = $this->some_model->get_user_id();
    }

    public function index() {
        $this->load->view('my_view', $this->data);
    }
}
在视图中,您可以按如下方式访问它:

echo $user_id;

var\u dump($role)
产生了什么?您是否尝试在没有
Template::get
的情况下访问
$role
?您需要访问变量:$this->role<代码>$this->helpdesk_model->getRole($this->auth->username())
不返回值。在模型中:
return$this->db->get('tbl_users')->row()在哪里使用
用户名
变量?您检索的是整个表,而不是一条记录。让我们@Yan来解决另一个问题:(如何在codeIgniter中使用分配的全局变量。)我正在执行
private$a=10
并在函数中使用$a,但它显示的是未定义的变量a
echo $user_id;