添加$ data以查看codeigniter

时间:2014-04-19 09:10:09

标签: php codeigniter

您好,当我将数据添加到我的视图时,它会将其推出容器。为什么会发生这种情况我有一个返回和NULL,TRUE。所有其他控制器都没问题,只有当数据变量时页脚控制器不工作。

public function index() {
$data['powered'] = $this->config->item('getTitle');

if (file_exists(APPPATH . $this->config->item('theme_path') . $this->config->item('config_template') . '/template/common/footer.tpl')) {
return $this->load->view($this->config->item('theme_path') . $this->config->item('config_template') . '/template/common/footer.tpl', $data, NULL, TRUE);
} else {
return $this->load->view($this->config->item('theme_path') . 'default/template/common/footer.tpl', $data, NULL, TRUE);
}
}

1 个答案:

答案 0 :(得分:0)

我认为您误解了如何将数据传递给视图。

让我们首先将一个简单的数据数组传递给视图:

$this->load->view('some_view', $data); // $data is your array

上面给出的方法还需要第三个参数,当您希望返回视图时,该参数是必需的。当您想要处理渲染视图时,可能会执行此操作。为此,请使用以下代码:

// notice the third argument. by default it is false
// ensure that you are assigning the view call to a variable
$view_data = $this->load->view('some_view', $data, true);

根据我的说法,您需要将代码更改为以下内容:

public function index() {
  $data['powered'] = $this->config->item('getTitle');

  if (file_exists(APPPATH . $this->config->item('theme_path') . $this->config->item('config_template') . '/template/common/footer.tpl')) {
    return $this->load->view($this->config->item('theme_path') . $this->config->item('config_template') . '/template/common/footer.tpl', $data);
  } else {
    return $this->load->view($this->config->item('theme_path') . 'default/template/common/footer.tpl', $data);
  }
}