Codeigniter - 在视图中使用会话数据

Ric*_*Coy 2 variables session codeigniter

我在会话数据中存储了用户名和姓,我想在视图中回显它,以便他们可以看到他们登录的对象.我似乎无法通过数据.我确信这很容易,但我对CI和整个MVC都很陌生.

控制器代码:

public function index() {
    if($this->session->userdata('admin_signed_in')){
    $this->load->model('dashboard_model');
    $data['userdata'] = $this->session->userdata;
    $data['main_content'] = 'dashboard/dashboard';  
    $this->load->view('common/template', $data);
    } else {
    redirect('signin');
    }

}
Run Code Online (Sandbox Code Playgroud)

查看代码:

<?php echo $userdata('first_name') ?>  <?php echo $userdata('last_name') ?>
Run Code Online (Sandbox Code Playgroud)

打印R结果:

Array ( [session_id] => 69db0f9ccbfde96d92cc09837067438c [ip_address] => ::1 [user_agent] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:16.0) Gecko/20100101 Firefox/16.0 [last_activity] => 1352998508 [user_data] => [0] => Array ( [admin_id] => 10 [first_name] => Richard [last_name] => Coy [admin_role] => 1 ) [admin_signed_in] => 1 ) 
Run Code Online (Sandbox Code Playgroud)

Dar*_*ren 6

控制器代码:

public function index() {

    ...
    $data['first_name'] = $this->session->userdata('first_name');
    ...
}
Run Code Online (Sandbox Code Playgroud)

查看代码:

<?= $first_name; ?>
Run Code Online (Sandbox Code Playgroud)

或者,如果要像当前一样传递数据,则可以将视图数据userdata作为数组访问,而不是函数,即:

<?= $userdata['first_name'];?>
Run Code Online (Sandbox Code Playgroud)