我有一个控制器 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
)
)
如何在内容视图中访问新数据?
答案 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编程的更多信息,请告诉我们:)