【发布时间】:2010-08-17 09:57:14
【问题描述】:
如果我在控制器中有 $data[] 数组和 $another_data[] 我们如何在视图文件中传递这两种类型的数据?前提是 codeigniter 实现类似于 $this->load->view('view_page', $data)
【问题讨论】:
标签: codeigniter
如果我在控制器中有 $data[] 数组和 $another_data[] 我们如何在视图文件中传递这两种类型的数据?前提是 codeigniter 实现类似于 $this->load->view('view_page', $data)
【问题讨论】:
标签: codeigniter
如果您可以保证数组键在两个数组中是唯一的,您可以使用 array_merge 在传递给视图之前合并两个数组。
$this->load->view('view_page', array_merge($data, $another_data));
否则,您可以创建一个父数组并将两者都存储为子数组。
$parent_data = array('data' => $data, 'another_data' => $another_data);
$this->load->view('view_page', $parent_data);
【讨论】:
试试这个:
$data['array1'] = $array1;
$data['array2'] = $array2;
this->load->view('view_page', $data);
然后在您看来,以$array1 和$array2 访问这两个数组。
【讨论】:
只需将它们分配为您传递给视图的数组的子数组。我总是在控制器中创建一个$view_data 数组,然后使用$this->load->view('layout', $view_data); 将其发送到视图
这是我的意思的一些例子:
$view_data['page_title'] = 'Array Examples';
$view_data['view_file'] = 'examples/array';
$view_data['array_one'] = array('apples', 'bananas', 'pears');
$view_data['array_two'] = array('ford', 'skoda', 'peugeot');
$this->load->view('layout', $view_data);
然后在视图中你可以像下面这样访问它们:
<h6>List of fruits:</h6>
<pre><?php print_r($array_one); ?></pre>
<h6>List of cars:</h6>
<pre><?php print_r($array_two); ?></pre>
希望对您有所帮助。
【讨论】:
$this->load->view("first"=>demo, "second"=>demo2);
foreach( $first->array_result() as $result )
{
$result['test'];
}
foreach( $second->array_result() as $result )
{
$result['test'];
}
【讨论】: