嗨我在codeigniter中有一些数组问题,如何将数组传递给视图,这里代码不起作用。
型号:
public function get_all()
{
$query = $this->db->get('category');
$result = $query->result_array();
foreach( $result as $key => $row )
{
$query = $this->db->get_where('categorysub', array('categoryID'=>$row['categoryID']));
$row['childmenus'] = $query->result_array();
$result[$key] = $row;
}
return $result;
}
控制器:
$this->load->model(array('mcategory','mcategorysub'));
$data['title']= 'Detail Kategori';
$data[] = array(
'nestedmenu' => $this->mcategory->get_all());
$data['nestedmenu'] = array($data);
$this->load->view($this->template, $data);
查看:
foreach($nestedmenu as $nestedmenu_type)
{
echo "<h2>" . $nestedmenu_type['name'] . "</h2>";
echo "<ul>";
foreach($nestedmenu_type['childmenus'] as $childmenu)
{
echo "<li>" . $childmenu['name'] . "</li>";
}
echo "</ul>";
}
程序应该显示如下结果:
Menu 1
menu 1a
menu 1b
menu 1c
Menu 2
menu 2a
menu 2b
......
但实际上是这样的结果错误:
MENU 1
遇到PHP错误 严重性:注意 消息:未定义的索引:childmenus 文件名:admin / vcategory_read.php 行号:34
A PHP Error was encountered
严重性:警告
消息:为foreach()提供的参数无效
文件名:admin / vcategory_read.php
行号:34
答案 0 :(得分:0)
从它的外观来看。您的$query->result_array()
会返回一个资源。这不能用作foreach的输入。