我想让输出看起来像这样
[{"0":"1.1","1":"KAS & BANK","2":"kosong"},
{"0":"1.1","1":"KAS & BANK","2":"kosong"},
{"0":"1.1","1":"KAS & BANK","2":"kosong"}]
但我真的搞砸了代码和输出 这是我的控制器
public function coa($id){
$data['listcoa'] = $this->easyway_model->getCoa($id);
$this->load->view('perusahaan_coa', $data);
}
这是我的模特
public function getCoa($id)
{
$query = $this->db->select('*')
->from('tb_coa')
->where('id_perusahaan', $id)
->get();
return $query;
}
我应该如何在我看来调用它?到目前为止,我正在使用像这样的foreach,但输出真的搞砸了
foreach($listcoa->result() as $list){
$cabang[] = $list->no_account;
$cabang[] = $list->deskripsi_coa;
$cabang[] = $list->tipe_akun;
$json = json_encode($cabang, JSON_FORCE_OBJECT);
echo $json; }
这是我到目前为止的输出
{"0":"1.1","1":"KAS & BANK","2":"kosong"}{"0":"1.1","1":"KAS & BANK","2":"kosong","3":"1.1.001","4":"KAS","5":"kosong"}{"0":"1.1","1":"KAS & BANK","2":"kosong","3":"1.1.001","4":"KAS","5":"kosong","6":"1.1.002","7":"MANDIRI","8":"kosong"}
没有逗号,数组索引不断增加。
答案 0 :(得分:2)
首先需要移动
$json = json_encode($cabang, JSON_FORCE_OBJECT);
echo $json;
在foreach
循环之外。目前,每次循环运行时它都会执行该命令,因此您需要多次输出$cabang
数组,并且每次包含更多数据时,最新循环的结果是加入。
如果您希望将数组作为输出,也可以根据您的问题删除JSON_FORCE_OBJECT设置。而且你需要让$ cabang成为一个多维数组。
$cabang = array();
foreach($listcoa->result() as $list){
$item = array();
$item[0] = $list->no_account;
$item[1] = $list->deskripsi_coa;
$item[2] = $list->tipe_akun;
$cabang[] = $item;
}
$json = json_encode($cabang);
echo $json;