我在函数foreach中遇到问题,结果数据没有全部显示
数据表格数据库如下表名是“view_kebutuhan_perjal”: 代码模型
function getPerjal()
{
$query=$this->db->query("SELECT * from view_kebutuhan_perjal");
return $query;
}
控制器代码:
$Kebutuhan=$this->M_Kebutuhan_Perjal->getPerjal();
foreach ($Kebutuhan->result() as $row ) {
$hasil=array(
$row->id_perjal,
$row->jenis_perjal,
$row->ruas_jalan,
$row->lokasi_km,
$row->letak,
$row->kondisi,
$row->tahun,
$row->tahunRPJMD,
);
}
$data=array(
'data'=> [$hasil],
);
$this->output
->set_status_header(201)
->set_content_type('application/json', 'utf-8')
->set_output(json_encode($data, JSON_PRETTY_PRINT))
->_display();
exit;
但结果数据只有一条记录如下: -
答案 0 :(得分:2)
您在$hasil
循环中反复覆盖foreach()
变量。这就是为什么只有一个价值即将到来。如下所示: -
$hasil = array(); // create array variable
foreach ($Kebutuhan->result() as $row ) {
$hasil[]=array(
$row->id_perjal,
$row->jenis_perjal,
$row->ruas_jalan,
$row->lokasi_km,
$row->letak,
$row->kondisi,
$row->tahun,
$row->tahunRPJMD,
); // assign data to array variable
}
$data=array(
'data'=> [$hasil],
);