我试图从两个联接表中获取数据,从一个表中我收集列表标题,从第二个联接表中我收集列表数据.
型号代码:
function view_searching_type_items()
{
$this->db->select("searching_type.searchtype_name, search_type_item.st_item_id_pk, search_type_item.searchtype_itemname");
$this->db->from('searching_type');
$this->db->join('search_type_item', 'search_type_item.st_id_fk = searching_type.st_id_pk');
$query = $this->db->get();
return $query->result_array();
}
控制器:
$url1 = 'http://localhost/pakistanmenu/index.php/Restaurant/ViewSearchingTypeItems';
$curl_hand = curl_init($url1);
curl_setopt($curl_hand, CURLOPT_TIMEOUT, 5);
curl_setopt($curl_hand, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($curl_hand, CURLOPT_RETURNTRANSFER, true);
$data1 = curl_exec($curl_hand);// json_decode($data)
curl_close($curl_hand);
$result['searchingtype'] = (array) json_decode($data1,true);
$this->load->view('header');
$this->load->view('index',$result);
$this->load->view('footer');
查看代码:
<?php foreach ($searchingtype as $searchingtyp):?>
<ul class="list-group checked-list-box">
<h1 class="page-header leftsidebar-heading"><?php echo $searchingtyp['searchtype_name'];?></h1>
<li class="list-group-item" data-style="button" style="cursor: pointer;">
<span class="state-icon glyphicon glyphicon-unchecked">
</span>
<?php echo $searchingtyp['searchtype_itemname'];?>
<input type="checkbox" class="hidden">
</li>
请检查下面的图像,我已经显示了此代码的输出,并且我还画了我需要的输出,谢谢,请帮助我.谢谢
解决方法:
只需存储您的姓氏,并且仅在新名称与其不同时才打印它.发生这种情况时,我们还将创建新列表,以便每个组具有不同的列表.
<?php
// Define our test variable
$lastName = null;
foreach ($searchingtype as $searchingtyp):
?>
<?php
if ($lastName != $searchingtyp['searchtype_name']):
// It's not the same name
if ($lastName != null):
// Close the previous list (except from the first iteration).
?>
</ul>
<?php
endif;
?>
?>
<ul class="list-group checked-list-box">
<li><h1 class="page-header leftsidebar-heading"><?php echo $searchingtyp['searchtype_name'];?></h1></li>
<?php
// Store the current name so we can check again in the next iteration
$lastName = $searchingtyp['searchtype_name'];
endif;
?>
// The rest of your code.. just move the </ul> after the loop.
<?php endforeach ?>
</ul>