如何从视图传递数据到Codeigniter中查看?

时间:2013-06-01 19:32:51

标签: php codeigniter

我有一个控制器 main.php 。从这个控制器加载视图并传递数据。

  $this->load->view('main',$data);

在我的主视图中加载以下内容:

 $this->load->view('header');
 $this->load->view('content',$newData);
 $this->load->view('footer')

但是当我尝试访问$newData时,我认为它没有设置。

$data is of type
    Array
  (
      [newData] => Array
      (
        [0] => abc
        [1] => cde
        [2] => pqr
        [3] => xyz
    )
   )

如何在内容视图中访问新数据?

3 个答案:

答案 0 :(得分:1)

 $this->load->('content',$newData);

而不是用户

$this->load->view('content');

不会在内容视图中访问$ data数组。 Codeigniter有一个很好的文档..

答案 1 :(得分:1)

查看$data的结构,你可以尝试这个,而不是测试:

$this->load->view('main',$data);
主视图中的

$this->load->view('header');
$this->load->view('content', array('newData' => $newData));
$this->load->view('footer')

当您尝试访问newData时,视图预计会有一个名为newData的密钥,但您传入的是newData本身,所以如果您用数组包装它那应该没问题。

答案 2 :(得分:0)

第一个$this->load->('header');不是有效的php行!

因为没有函数名$this->load->FUNCTION_NAME('')

所以它会给你一个错误。

第二个您无法从另一个视图中加载视图,加载视图是控制器的工作。

如果您需要有关MVC编程的更多信息,请告诉我们:)